Java 基础
2015-05-25 本文已影响218人
nancymi
nancymiduo 2014 / 05 / 24
数学运算符
运算的封闭性
补码运算的封闭性
Java 运算的规则:
- 同种类型参与运算(可能需要自动类型转换)
- 返回同种类型(可能发生:上溢出和下溢出)
- byte、short、char三种类型在 Java 中是表象(假的),底层都是按照 int 运算的
public class Test {
public static void main(String[] args) {
//自动转换为 int 进行运算
int a = 10 + 'a';
System.out.println(a);
int b = 0x7fffffff; //int 最大值
//输出结果为最小值(补码运算)
System.out.println(b+1); //负数
//先以 int 类型得出结果,之后赋值给 long 类型
long l = b + 1;
System.out.println(l); //负数
}
} - 整数的除法是整除
数组变量的声明
初始化
数组元素是自动初始化的,自动初始化为“零”:
- 0 ~ 整型
- 0.0 ~ 浮点型
- \u0000 ~ char
- false ~ boolean
- null ~ 引用类型
数组复制:
System.arraycopy(src, srcPos, dest, destPos, length);
Arrays.copyOf(src,length)
标识符与关键字
命名规则:
- 由字母、数字、下划线、$组成,不能以数字开头
- 大小写敏感
- 不得使用java中的关键字和保留字
常用的转义字符:
\b
,\f
,\n
,\r
,\t
,\'
,\"
,\\
static 关键字
修饰:属性,方法,内部类,代码块。
- 静态属性
属于类的全体类的实例共享的变量
静态属性是在类的加载期间初始化的 - 实例变量
属于对象的属性,使用对象.属性访问。
static 方法
使用 static 声明的方法,属于类的方法,用来一般表示工具方法。
静态代码块
类加载期间运行的代码块,由于类只加载一次,所以静态代码块只执行一次。
一般用来在类加载以后初始化一些静态资源时候使用。
static修饰符综述
- static 修饰属性(类变量)
- static 修饰方法(静态方法)
- static 修饰初始代码块
final 关键字
- final 修饰的类,不能再被继承
String
,Math
,Integer
,Long
,Character
都是final类 - final 修饰的方法,不能再被覆盖
- final 修饰的变量,初始化以后不允许再修改了
final 局部变量
final 方法参数
final 的成员变量 - final static 作为常量
知识点: - final 的局部变量,只能初始化不能改
- final 的方法参数,不能改
- final 的引用,引用指向不能改,但是对象的属性可以改
final 修饰符综述
不允许改变,可以修饰变量、方法、类。
- final 修饰变量
常量不会有默认初始值。 - final 修饰方法
不能被子类覆盖 - final 修饰类
不能被继承 - final 类中的方法也是 final 的
final 不能用来修饰构造方法 - final,finally,finalize 的区别:
final 用于声明属性、方法和类,分别表示属性不可变,方法不可覆盖,类不可继承;
finally 是异常处理语句结构的一部分,是异常的统一出口,表示总是执行;
finalize 是 Object 类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收。
抽象类 abstract class
抽象方法,只有行为的概念,没有具体的行为实现。
abstract修饰符综述
略