1.静态
普通成员:是属于对象的
静态成员:a.是属于类的;
b.定义时加上关键字 static ;
c.关键字 self:在类中代表该类;
d.调用静态成员符号双冒号::
普通方法是可以调用静态成员的; 静态方法不能调用普通成员
例如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
输出结果就是:战斗民族你好
2.抽象类
抽象类a.它不能被实例化, b.它作为父类使用, c.关键字 abstract
例如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
实例化子类继承父类就可以输出正确
注意:强行实例化抽象类,会出现错误
抽象类的扩展功能很强,可以不动源代码的基础上扩展出其他的类
例如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
|
3.接口
接口:a.极度抽象的类
b.定义方式 :interface
c.接口中的方法是控制子类必须实现某些功能(接口中出现的方法,子类必须实现)
d.实现接口 关键字:implements
例如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
|
输出结果就是:鼠标插上
注意:如果子类中没有把父类的方法全部实现,那么输出时会报错;如果子类把父类的方法全部实现了,那么就会输出正确的调用方法答案