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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

shengwen

初级黑马

  • 黑马币:

  • 帖子:

  • 精华:

© shengwen 初级黑马   /  2015-12-21 20:02  /  688 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

abstract class Name{
         private String name;
         public abstract boolean isUniqueName(String name){}
}

各位大神,这有啥错?

5 个回复

倒序浏览
抽象方法不能有方法体的,把
public abstract boolean isUniqueName(String name){}
public abstract boolean isUniqueName(String name);
回复 使用道具 举报
ninety_奶挺 发表于 2015-12-21 20:15
抽象方法不能有方法体的,把
public abstract boolean isUniqueName(String name){}
public abstract boole ...

把上面改为下面这句
回复 使用道具 举报
既然是抽象方法,你首先要知道的是抽象方法是没有返回值的.
其次,抽象方法需要的是子类实现,而并非自身具有什么功能,他仅仅是声明一个方法,或者可以说是一个动作?
你可以改成这个
public abstract void isUniqueName(String name);
你想想看,为什么要定义一个抽象的方法呢,
我觉得老师讲的例子很不错
一个人的类
那么人都会有一个吃饭的动作,
但是具体怎么吃,什么时候吃,吃什么,这些都没办法具体的到写进人的这个吃饭的方法中
但是作为人类的一个,你有自己的吃饭习惯
那么面向对象中经典的东西就出来了
人有吃饭这个动作,但因为每个人都有自己特别的吃饭习惯,那么我就不能把每个人特有的习惯写成一个东西,
这时候人就可以声明说,是个人就要吃饭(声明一个抽象的吃饭动作)
接下来提供你创建每个人的对象去实现这个抽象的方法,
那么就是继承喽
好吧,其实我感觉自己有点啰嗦了- -
不知道你能不能看的懂,
以后多一起交流下啊,
回复 使用道具 举报
214652440 发表于 2015-12-21 21:28
既然是抽象方法,你首先要知道的是抽象方法是没有返回值的.
其次,抽象方法需要的是子类实现,而并非自身具有 ...

你讲的太好了 谢谢啦
回复 使用道具 举报
icm 中级黑马 2015-12-21 21:54:35
地板
抽象类不能有方法体,{}属于方法体,应该用;
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马