只是个人在学习中的一些记录,不具有普适性!!
static静态关键字
- 被static修饰的变量和方法是静态的,存储在jvm的方法区,所以只要加载了类就可以使用static方法。
- 静态方法中不能调用非静态变量,因为在这个类没有创建对象时,静态方法找不到非静态变量。在这个类创建了对象之后,静态方法也不能确定方法内的非静态变量来自于哪个对象,所以静态方法中只能调用静态变量
- 被此类创建的对象可以直接调用静态方法或变量,但是静态变量对于所有的对象是共享的。
- 如果用static修饰一段代码块,这段代码块会在初始化类的时候执行,因为类只会初始化一次,所以这段代码块也只会执行一次
多态
多态是同一个行为具有多个不同表现形式的能力。多态只用来形容方法
多态的发生具有三个必要条件:
- 继承
- 方法重写
- 父类引用指向子类对象 eg:dog是animal的子类,当一个方法的参数为(animal a)时,实际传入的参数是一个dog对象。或者animal b=new dog();
多态的优点
- 消除类型之间的耦合关系
- 可替换性
- 可扩充性
- 接口性
- 灵活性
- 简化性(如果不用多态会有很多重载方法)
final关键字
- final关键字修饰的方法不能被重写
- final修饰的类不能被继承
- final修饰的变量是常量,不能更改