抽象类是有构造方法的。
因为,虽然抽象类不能直接被实例化,但是继承抽象类的子类毫无疑问能被实例化,在其子类被实例化时,必然执行子类的构造方法,而该构造方法中第一行默认执行:
super();
直接指向父类、即所继承的抽象类的构造方法,因此抽象类必有构造方法。
接口是没有构造方法的。
因为接口与类之间的关系是实现,而非继承,所以不存在构造方法。
Java中抽象类和接口在构造方法上的区别
最新推荐文章于 2022-08-26 22:31:11 发布
抽象类是有构造方法的。
因为,虽然抽象类不能直接被实例化,但是继承抽象类的子类毫无疑问能被实例化,在其子类被实例化时,必然执行子类的构造方法,而该构造方法中第一行默认执行:
super();
直接指向父类、即所继承的抽象类的构造方法,因此抽象类必有构造方法。
接口是没有构造方法的。
因为接口与类之间的关系是实现,而非继承,所以不存在构造方法。