大龄屌丝自学笔记--Java零基础到菜鸟--018

final,多态

 

1、final

final:常量,不能被修改。可以修饰类(不能被继承)、方法(不能被重写)、变量(只能被赋值一次)。

注意事项:final修饰基本类型,基本类型的值不能改变。

     final修饰引用类型,引用类型的地址不能改变;该对象堆里的值可以改变。

     final静态常量最好在声明时赋值,非静态常量最好在构造函数结束前赋值。

 

2、多态

多态:某一个事物,在不同时刻表现出不同的状态,如:猫是猫【Cat c=new Cat();】,猫是动物【Animal c=new Cat();】 。

多态的前提:有继承,有方法的重写,有父类引用子类。

多态的优点:提高了代码的维护性、可扩展性。

多态的缺点:父类不能访问子类特有的功能(可以通过强转访问,如:Father f=new Son();  Son s=(Son)f; ) 。

注意事项:子类可以访问父类的内容,父类不可以访问子类的内容。

     父类new子类的时候,访问父类的构造函数。

     父类new子类的时候,静态方法编译、运行的都是父类的内容(因为静态方法只和类相关)。

     父类new子类的时候,成员变量、成员方法编译的都是父类的内容,成员变量运行父类的内容,成员方法运行子类的内容。

posted @ 2015-09-15 23:52  ilmari  阅读(136)  评论(0编辑  收藏  举报