黑马程序员技术交流社区
标题:
请问JAVA中的abstract和final的用处。
[打印本页]
作者:
Do、
时间:
2015-12-20 12:01
标题:
请问JAVA中的abstract和final的用处。
急求。。。
作者:
sunpeijie
时间:
2015-12-20 13:39
使用final
1:final关键字主要用于修饰类、类成员、方法、以及方法的形参。
final修饰成员属性:
1:说明该成员属性是常量,不能被修改。
public static final double PI=3.14;
1:public :访问权限最大
2:static :内存中只有一份
3:final :是一个常量
4:常量名大写
5:必须初赋值。
2:使用类名.成员。修改该成员的值,报错。--常量不能被修改
1:基本数据类型,final使值不变
2:对象引用,final使其引用恒定不变,无法让其指向一个新的对象,但是对象自身却可以被修改。
3:该关键字一般和static关键字结合使用
1:常量可以优先加载,不必等到创建对象的时候再初始化。
4:final和static可以互换位置
final修饰类:
1:该类是最终类,不能被继承。
1:将父类加final修饰,子类继承,就会报错。
2:查看api文档发现String类是final的。Integer类也是final的
1:为了防止代码功能被重写
2:该类没有必要进行扩展final修饰方法
final修饰方法
1:该方法是最终方法,不能被重写
2:当一个类被继承,那么所有的非私有函数都将被继承,如果函数不想被子类继承并重写可以将该函数final修饰
3:当一个类中的函数都被修饰为final时,可以将类定义为final的。
作者:
sunpeijie
时间:
2015-12-20 13:41
1.被abstract修饰的类,称之为抽象类.
2. 抽象类不能创建对象.
3. 抽象类中可以有成员变量.
该成员变量也不是给自己用的,给子类用的.
4. 抽象类中可以有构造函数.
该构造函数不是给自己用的,给子类用的.
5. 抽象类可以有非抽象方法.
这样非抽象方法,带有方法体,给子类用的.
6.一个类中一旦出现了抽象方法,该类必须声明为抽象类...
特殊的抽象类:
类被abstract 修饰类,变为了抽象类.
这个类中可以没有抽象方法... ->禁止创建对象...
抽象类和抽象方法:
1. 类中有抽象方法,这个类必须是抽象类.
2. 抽象类中可以没有抽象方法...
抽象类的使用:
1. 抽象类需要子类继承.
发挥价值... 否则,抽象类不能创建对象,内部设计无法使用的...
方式一:
子类继承抽象类.
子类重写抽象类所有的抽象方法.
方式二:
子类继承抽象类.
子类不想重写(不会重写)父类中的抽象方法.
可以继续将子类声明为抽象类.
*/
作者:
schubertw
时间:
2015-12-20 14:35
楼上说的对
作者:
Do、
时间:
2015-12-25 12:12
sunpeijie 发表于 2015-12-20 13:39
使用final
1:final关键字主要用于修饰类、类成员、方法、以及方法的形参。
final修饰成员属性:
谢谢啦。。。
作者:
云鱼
时间:
2015-12-25 21:55
abstract可以修饰类,成员方法.
final可以修饰类,成员方法,成员变量
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2