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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wangleixhlm 中级黑马   /  2014-5-28 23:07  /  7378 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 wangleixhlm 于 2014-5-30 18:24 编辑

抽象类可以继承实体类,但前提是实体类必须有明确的构造函数
这句话是什么意思?

7 个回复

倒序浏览
1.抽象类也有构造函数,只是,这个构造函数是给子类提供的。所以如果抽象类继承其他类,那么抽象类的构造函数也会使用super语句,所以被继承类也必须有对外提供的构造函数
回复 使用道具 举报 0 1
抽象类可以继承实体类,完全没问题,因为所有类都有父类Object,Object为实体类。
回复 使用道具 举报 1 0
只要是继承关系,父类都必须有明确的构造函数。
不然子类中的的构造函数的super()语句会有问题
回复 使用道具 举报 1 0
凡是抽象类,就一定会是某个类的父类!否则,这个抽象类的存在没有意义,因为抽象类不能被实例化。既然抽象类一定是某一个类的父类,所以,这个抽象类一定要有构造函数!
回复 使用道具 举报
抽象类可以继承实体类,但是和实体类的继承一样,也要求父类可继承,并且拥有子类可访问到的构造器。
1.
所有的class都必须有一个构造方法,如果你没有在代码里声明构造方法,系统会自动给你生成一个公有无参的构造方法。而只要你自己声明了一个构造方法,无论有参无参,私有公有,系统就不再帮你生成默认无参构造器了。
2.
所有的子类构造器都要求在第一行代码中调用父类构造器,如果不写,系统默认去调用父类的无参构造器。
回复 使用道具 举报
lin' 初级黑马 2014-5-29 08:48:45
7#
抽象类可以继承实体类,就是说可以用实体类里面的属性和方法,实体类必须有明确的构造函数是说,比如你创建一个实体类Student s=new Student("小明");必须要给对象具体赋值才能创建,不能创建空的
回复 使用道具 举报
赵文豪 发表于 2014-5-28 23:46
凡是抽象类,就一定会是某个类的父类!否则,这个抽象类的存在没有意义,因为抽象类不能被实例化。既然抽象 ...

类肯定是有构造函数的,
不过一定不一定是空参数是依需求把。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马