1.0 变量
变量分为primitive主数据类型和对象引用类型。前者包括基本类型的变量如:int、float、boolean。后者就是引用的变量。
在类中定义的变量可以称为全局变量,可以被类中的方法所调用。
在方法中定义的变量只可以在此方法中调用,其他方法不能调用(但可以定义相同的变量名)
静态变量:可被类中的所有方法调用,在变量前用static修饰
调用方式:类名.变量名 +对象名.变量名(创建了对象的前提)
例子:类名调用
public class HelloWorld {
// 定义静态变量,保存班级名称
static String className = "JAVA开发一班";
public static void main(String[] args) {
// 访问静态变量,输出班级名称
System.out.println( HelloWorld.className );
}
}
2.构造方法
- new + 构造方法 用来创建一个新的对象
- 构造方法是定义在类里面用来初始化对象的一种方法,与类同名且无返回值
- 当没有指定构造方法时,系统会自动添加无参的构造方法
- 当有指定的构造方法时,无论是有参、无参的构造方法,度不会自动添加无参的构造方法。
- 构造方法的重载:方法名相同,参数不同的多种方法,调用时会根据不同的参数调用相应的方法。
3.Attention
1.在静态方法中可以调用静态变量,调用非静态变量时需要创建对象再调用
2.在常规方法中调用则没有限制。
3.静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。如:
4.static 使用之静态初始化块
在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。如果使用 static 修饰初始化块,就称为静态初始化块。
需要特别注意:静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
结果:
程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。