Core Java 基本语法 随便摘点
1.复用代码,组合,聚合,继承复用
2.方法的重写,覆盖,Override
3.Java中一个类的信息编译之后是存放在字节码文件中的
(.class),运行时,如果虚拟机需要用到这个类,
它就会通过ClassPath找到这个字节码文件,
通过一个输入流,把其中的内容读入到虚拟机内存中,
从而获知这个类的信息
称为:类加载(Class Loading)
只会进行一次,第一次用到这个类的时候
静态初始代码块在类加载的时候运行
类加载的时机:能不加载就不加载
1 第一次new对象的时候 加载
2 第一次访问static成员 加载
3 声明引用,不会类加载
4 加载子类会先加载父类
5 如果通过子类访问父类的静态成员,只加载父类
6 如果访问的是类的公开静态常量,
那么如果编译器在编译的时候能确定这个常量的值,
那么就不会加载,反之,编译器不能确定值,
那么运行时就会加载
4.
//静态初始化代码块,地位相当静态变量
//类加载的时候,静态变量被初始化,静态初始化代码块执行
//初始化代码块,相当于实例变量的地位
//在初始化实例变量的时候执行
//用父类的引用指向子类的对象
//多态在方法返回类型的表现
//多态在方法参数上的应用
//在静态方法中,不能用this, super
//不能在静态方法中访问非静态成员
//静态方法,跟对象无关
//静态方法是可以被子类继承的
//在非静态方法中,完全可以访问静态成员
//静态方法可以被覆盖,但是没有多态
//静态方法只能被静态方法覆盖,
//而非静态方法也只能被非静态方法覆盖
//静态方法和非静态方法之间可以形成重载关系
public int x = 20;//变量的遮盖