全心思齐网

抽象类中的方法不一定是抽象方法吗?

它时一个去除对象中不重要的细节的过程,只有那些描述了对象的本质特征的关键点才被保留。例如:苹果、香蕉,普通,桃子等。它们的共同特征就是水果。得出水果概念的过程,就是一个抽象的过程。 抽象类和方法的目的就是把多个类的共有属性拿出来,单独作为一个类来让其他类去继承。

抽象类在什么情况下比较适用

需要运用多态,并且某些方法在子类中必须重定义时。 下面看下各个语言的写法: c++的写法

java的写法Animal .java

Cat .java

Dog .java

Main .java

python的写法

对比总结:

抽象类不能被实例化,只能被继承,然后继承类实例化;

c++通过定义virtual修饰的函数来实现抽象类;

java通过abstract来实现抽象类和方法,如果类中至少存在一个抽象函数,则该类必须声明为抽象类,即函数和类前都必须用abstract修饰;

python需要借助abc模块来实现抽象类;

匿名回答于2019-09-06 07:40:21


相关知识问答