java中,抽象类可以有构造方法吗
发布网友
发布时间:2022-04-24 11:48
我来回答
共5个回答
热心网友
时间:2023-10-11 18:22
抽象类可以有构造方法,只是不能直接创建抽象类的实例对象而已。
热心网友
时间:2023-10-11 18:23
可以有构造方法。构造方法的作用有两个,一个是初始化变量,另外一个是实例化对象,抽象类不能实例化,还可以做另外一个作用。
热心网友
时间:2023-10-11 18:23
当然可以,只是不能直接创建抽象类的实例对象而已
1、如果在父类中(这里就是你的抽象类)中显示的写了有参数的构造函数,在子类继承是就必须写一个构造函数来调用父类的构造函数
例子:
abstract class Person { //定义一个抽象类,必须被继承
Person(int i) {
}
}
public class Student extends Person {
Student() {
super(int i)://必须显示的调用父类构造方法//super代表父类对象
}
}
2、如果父类中有没有参数的构造函数,在子类中可以不显示的写父类的构造函数,Java会自动调用没有参数的构造函数
例子:
abstract class Person { //定义一个抽象类,必须被继承
Person() { //此构造函数也可以不写,Java会默认添加一个没有参数的构造函数
}
}
public class Student extends Person {
Student() {
//super();//可以不写,Java会自己调用这个super()方法
}
}
热心网友
时间:2023-10-11 18:24
抽象类可以有构造方法,构造方法不可继承,但是可以供子类用super()或者super(参数,参数。。。。)调用。
热心网友
时间:2023-10-11 18:24
可以有哇!!必须有哇!!!!百分百真诚回答! 王水也是水!!抽象类也是类呀!!