A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

1,抽象类一定是个父类?  
         是的,因为不断抽取而来的。
2,抽象类是否有构造函数?
有(即使不定义构造函数,也还有默认构造函数呢…)
对于父类而言,其除了可以给自己的对象初始化以外,还可以给子类对象初始化。
         而抽象类是父类。虽然不能给自己的对象初始化,但是可以给自己的子类对象初始化。
3,抽象类中是否可以不定义抽象方法。
         是可以的,那这个抽象类的存在到底有什么意义呢?仅仅是不让该类创建对象。
4,抽象关键字abstract不可以和哪些关键字共存?        
         1private:(抽象方法要被覆盖,父类private修饰的方法是没法被覆盖的。)
2,final:(因为final修饰类没法被继承,不可能产生子类)
                              
         3static:(static修饰的成员随着类的加载被加载,可以直接被类名调用。抽象的方法如果成了静态就可以被类名所调用,而抽象方法被调用本身就没有意义。)
注意:abstract能修饰类、修饰方法、但是不能修饰变量!
抽象类和一般类的异同点:
         相同:
                   1,它们都是用来描述事物的。
                   2,它们之中都可以定义属性和行为。
         不同:
                   1,一般类可以具体的描述事物。抽象类描述事物的信息不具体
                   2,抽象类中可以多定义一种成员:抽象函数。而一般类定义不了。
                   3,一般类可以创建对象,而抽象类不能创建对象。
个人理解:如果一个抽象类不被继承,将没有任何意义。抽象类就是为继承而生的。

您需要登录后才可以回帖 登录 | 加入黑马