包组织:
访问修饰符:
public:全工程都可见,范围最大
protected:包级私有+子类可见
默认:包级私有,在同一个包的所有类可见
private:只有本类可见,范围最小
package:用于声明当前类所在的包,必须写在代码的第一行
import:用于导入当前类所引用的类,正常在package语句下一行
static关键字:没有static关键字的可以认为是对象的,有static的可以认为是类的
加static的属性叫类属性:全局变量,不论哪个对象或者整个类型来改变属性的值,都会对其他对象/整个类造成影响
加static的方法叫类方法:全局方法,一般用于定义工具方法
普通方法(对象方法)和静态方法(类方法)的区别
对象方法可以直接调用对象属性和对象方法以及静态属性和静态方法
静态方法可以调用静态属性和静态方法,但不能直接调用对象属性和对象方法
静态代码块:
只会在第一次访问该类型的时候,执行一次代码块
继承:关键字为extaends,子类对象继承了父类对象的所有内容,除了static,但不都可见,静态资源属于类,不属于被继承的范畴
继承中的构造方法:
子类无参构造构造方法默认来自于父类无参
如果父类有有参但没有无参,则子类无法直接写出无参构造,
需要用super()指定父类的构造方法
super关键字的作用:
子类可以通过super关键字指定父类对象的内容
super.属性一般用于区分子类、父类都有的属性
super.方法()一般用于区分子类、父类有相同方法(重写的同时调用父类方法)
super(...)