方法:
1、private+字段(field),需要用method才可以修改字段
private修饰符封装字段保证内部逻辑一致
2、private+方法(method),则此方法只可以在类内使用。
3、this变量,局部变量优先级更高所以要使用this指示类内字段
this
4、基本类型变量做参数传递的是值,引用型变量传递的是指针。
5、
构造方法后于字段初始化
继承:
1、没有写extends的类继承自object类。
继承树
2、protectd 修饰符,子类可访问,外部不可访问。
protected修饰符
3、super
子类调用父类字段时,用super.(field)。
任何class的构造方法,第一行写父类的构造方法:
(1)、如果父类有默认的构造方法,就写super();
(2)、如果父类没有写默认构造方法,那就必须super(参数1,参数2,,,)//按照父类有的构造方法写。
super调用父类构造方法
多态:
1、重写
在继承关系中,子类如果定义了一个与父类方法签名完全相同的方法,被称为覆写(Override)。
加上@Override可以让编译器帮助检查是否进行了正确的覆写。希望进行覆写,但是不小心写错了方法签名,编译器会报错。
实例方法调用基于运行时,而非变量的声明类型!!
2、重写object的三个重要方法:
object三个重要方法
3、在子类的覆写方法中,如果要调用父类的被覆写的方法,可以通过super来调用。
调用super.hello()
4、final修饰符
(1)、 继承可以允许子类覆写父类的方法。如果一个父类不允许子类对它的某个方法进行覆写,可以把该方法标记为final。用final修饰的方法不能被Override:
(2)、如果一个类不希望任何其他类继承自它,那么可以把这个类本身标记为final。用final修饰的类不能被继承:
(3)、final+字段则该字段只能初始化一次,再修改会编译报错、
抽象类--abstract修饰符
1、抽象类定义抽象方法,并不实现,其子类则需要具体实现抽象方法。
抽象类定义规范
2、面向抽象编程
引用新的子类时,不关心其具体类型