黑马程序员技术交流社区
标题:
抽象
[打印本页]
作者:
/mg依恋
时间:
2014-7-29 20:42
标题:
抽象
抽象类
(1)多个具体的事物具备相同的方法声明,而方法体不同,我们就只抽取方法声明,然后定义到一个类中。
而一个没有方法体的方法是一个抽象方法,一个类中有抽象方法,该类必须定义为抽象类。
(2)抽象类的特点:
A:抽象类或者抽象方法用abstract修饰。
B:抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类。
C:抽象类不能被实例化。
D:子类继承抽象类,要么是抽象类,要么重写所有父类抽象方法。
(3)抽象类的几个小问题
A:不能被实例化,要构造方法干啥?
B:一个类中没有抽象方法,居然定义抽象类,有什么意义?
C:抽象关键字不能和哪些关键字共存
a:private
b:final
c:static
(4)抽象类的成员:
A:成员变量 有变量,也有常量
B:构造方法 有构造方法,用于子类访问父类数据的初始化
C:成员方法 有抽象方法,也有非抽象的方法
(5)抽象类的案例
A:老师案例
B:学生案例
C:员工案例
作者:
渴望学习
时间:
2014-7-30 19:56
不错,不错
作者:
LFW
时间:
2014-7-30 20:36
A:不能被实例化,要构造方法干啥?》》》给继承它的子类调用,super(); C>》abstract定义的方法是没有函数主体的,所以不能static。如果有static的抽象方法,那类名.方法就可以调用一个没有方法主体的函数,注定报错。。。敲到现在我发现,楼主你是来问问题的吗。。。。。。。。。。。
作者:
LFW
时间:
2014-7-30 20:41
发现不是。。。我继续敲好了。。。》不能有private,因为私有了,子类就不能重写该方法了。一样,final修饰的方法是不可被重写的,所以不能与abstract一起。最后,我也没想到 B:一个类中没有抽象方法,居然定义抽象类,有什么意义?,求解释
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2