黑马程序员技术交流社区

标题: 抽象方法 [打印本页]

作者: shengwen    时间: 2015-12-21 20:02
标题: 抽象方法
abstract class Name{
         private String name;
         public abstract boolean isUniqueName(String name){}
}

各位大神,这有啥错?

作者: ninety_奶挺    时间: 2015-12-21 20:15
抽象方法不能有方法体的,把
public abstract boolean isUniqueName(String name){}
public abstract boolean isUniqueName(String name);
作者: ninety_奶挺    时间: 2015-12-21 20:16
ninety_奶挺 发表于 2015-12-21 20:15
抽象方法不能有方法体的,把
public abstract boolean isUniqueName(String name){}
public abstract boole ...

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

你讲的太好了 谢谢啦
作者: icm    时间: 2015-12-21 21:54
抽象类不能有方法体,{}属于方法体,应该用;




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2