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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© py强子 中级黑马   /  2013-7-19 17:21  /  4755 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

抽象方法必须定义在抽象类中吗?能不能定义在一般类中?

评分

参与人数 1技术分 +1 收起 理由
神之梦 + 1 赞一个!

查看全部评分

5 个回复

倒序浏览
本帖最后由 xscn 于 2013-7-19 18:12 编辑

含有抽象方法的类必须被声明为抽象类。
如果你覆写所有的抽象方法, 子类就变成一个普通的类.
如果没有覆写所有方法, 子类仍是抽象的.
如果一个类中中包含有抽象方法(哪怕只有一个), 你必须声明这个类是抽象的, 在class关键字前加上abstract.

评分

参与人数 1技术分 +1 收起 理由
神之梦 + 1 赞一个!

查看全部评分

回复 使用道具 举报
今天看毕老师讲的一个“抽象类练习”视频,代码是这样的:
class Employee                   //员工
{
                private String name;
                private String id;
                private double pay;
                Employee(String name,String id,double pay)
                {
                                this.name = name;
                                this.id = id;
                                this.pay = pay;               
                }
                public abstract void work();
                       
}
这个类必须声明abstract;
回复 使用道具 举报
含有抽象方法的类一定是抽象类,意味着子类需要实现该抽象类的方法,如果子类是普通类就要实现抽象类所有方法,如果子类也定义成抽象类,可以不去实现父类的抽象方法!但抽象类中可以含有普通方法,

评分

参与人数 1黑马币 +3 收起 理由
神之梦 + 3 赞一个!

查看全部评分

回复 使用道具 举报
谢谢啦!今天看讲课视频时,发现了一个小问题,希望以后看视频的同学注意啦!
回复 使用道具 举报
07-10-面向对象(抽象类练习),在Employee类中,毕老师忘加Abstract关键字啦!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马