final 最终的
修饰类 无法继承
修饰方法 子类无法重写
修饰变量 基础变量无法改变
修饰对象 引用地址无法改变
静态变量 static修饰的变量 这个变量属于类的 所以也称类变量,通过类名直接访问
实例变量 和 实例绑定,创建实例即会创建实例变量(就是对象,对象属性)
静态方法 类方法 里面无this super字段,类加载时存在,不依赖任何对象
静态语句块 只在类加载时运行一次
public static int b = 4; static { System.out.println(b); System.out.println("静态语句块"); } { System.out.println("代码块"); } public Keyword(){ System.out.println("构造方法"); } public static void main(String[] args) { final TestClass testClass = new TestClass(); //testClass = new TestClass(); testClass.setName("222"); Keyword k = new Keyword(); Keyword k1 = new Keyword(); }
运行结果:
4
静态语句块
代码块
构造方法
代码块
构造方法
加载顺序
静态变量/静态代码块(这个看代码顺序,由上至下)
静态方法
实例变量/普通代码块
构造方法
若存在继承关系,先静态后实,其次先父后子。
即 父类静态 子类静态 父类实态 子类实态。
如果随笔有啥错误,请有时间的大佬评论指出。本菜鸡会及时学习进行更改。