它时一个去除对象中不重要的细节的过程,只有那些描述了对象的本质特征的关键点才被保留。例如:苹果、香蕉,普通,桃子等。它们的共同特征就是水果。得出水果概念的过程,就是一个抽象的过程。
r 抽象类和方法的目的就是把多个类的共有属性拿出来,单独作为一个类来让其他类去继承。
r
抽象类在什么情况下比较适用
需要运用多态,并且某些方法在子类中必须重定义时。
r 下面看下各个语言的写法:
r c++的写法java的写法Animal .java
r Cat .java
r Dog .java
r Main .java
r python的写法对比总结:
抽象类不能被实例化,只能被继承,然后继承类实例化;
c++通过定义virtual修饰的函数来实现抽象类;
java通过abstract来实现抽象类和方法,如果类中至少存在一个抽象函数,则该类必须声明为抽象类,即函数和类前都必须用abstract修饰;
python需要借助abc模块来实现抽象类;