2 a578413629 a578413629 于 2014.12.12 22:47 提问

java 中 抽象类不能被实例化 但为什么可以有构造器

构造器不就是为了初始化对象而存在的吗 既然抽象类不能被实例化 那为什么 还要按个构造器 ?

5个回答

myisfei
myisfei   2014.12.12 23:01
已采纳

抽象类是不能被实例化,抽象类的目的就是为实现多态中的共同点,抽象类的构造器会在子类实例化时调用,因此它也是用来实现多态中的共同点构造

eagleyan
eagleyan   Rxr 2014.12.13 04:00

抽象类可以有成员变量,他们的初始化怎么做呢?这么一样你就明白为什么抽象类可以有构造函数了

caozhy
caozhy   Ds   Rxr 2014.12.12 23:42

构造函数可以在派生类中以Super(...)的形式调用,这样基类的构造就不用重复写了。

sunbo624
sunbo624   2014.12.18 18:28

构造器是用来初始化的 而不是new对象的 和C++不一样

cheifyfly
cheifyfly   2014.12.18 20:46

说白了,抽象类如果有子类,你是不是最好要把字段数据封装到抽象类里呢。。。让子类继承父类啊。没有构造函数怎么办。。。

Csdn user default icon
上传中...
上传图片
插入图片