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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 坚强 黑马帝   /  2011-11-9 22:32  /  1863 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  我在毕老师的视频里做的记录是这样的
抽象类的特点:
1 抽象方法一定在抽象类中
2 抽象方法和抽象类都必须被abstract关键字修饰
3 抽象类不可以用new创建对象,因为调用抽象方法没有意义
4 抽象类中的抽象方法要被使用,必须由子类复写起所有的抽象方法后,才能建立子类对象调用。
  
如果子类只覆盖了部分抽象方法,那么该子类还是一个抽象类。要复写所有父类中的方法。
  抽象类和一般类没有太大不同,该怎么描述还怎么描述,只是有些没有确定的东西在里面。
  抽象类比一般类多的是抽象函数,但是抽象类中可以不定义抽象函数。
  抽象类不可以实例化。
  抽象方法,没有方法主体,要加分号public abstract void work();


  关键是我在一本《详解JAVA SE》的书上看到是这样的,说,抽象类和接口的不同点之一就是:如果一个子类要实现接口,就必须实现接口中所有的方法,而子类可以不实现抽象类所有的抽象方法。
我觉得毕老师的是对的因为继承了一个抽象类而只实现了部分抽象方法,则子类中仍有抽象方法,应该还是抽象类,这样的话,就和书上的冲突了,是我理解错了书上的意思吗?

评分

参与人数 1技术分 +1 收起 理由
宁超 + 1

查看全部评分

2 个回复

倒序浏览
我没发现有什么问题啊!
如果一个子类要实现接口,就必须实现接口中所有的方法(对)
而子类可以不实现抽象类所有的抽象方法。(对)如果一个子类只实现了部分抽象方法,则子类中仍有抽象方法,应该还是抽象类。
没问题啊!

评分

参与人数 1技术分 +1 收起 理由
宁超 + 1

查看全部评分

回复 使用道具 举报
坚强 黑马帝 2011-11-10 16:54:13
藤椅
海林 发表于 2011-11-9 22:42
我没发现有什么问题啊!
如果一个子类要实现接口,就必须实现接口中所有的方法(对)
而子类可以不实现抽象 ...

  我明白了,我原以为子类怎么可以不实现所有抽象类中的抽象方法而可以去实例化,但是没有人说,子类非得实例化,谢谢你哦!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马