Java中的抽象方法是什么,怎么用?

Java中的抽象方法是什么,怎么用?

抽象方法…

听着就很抽象的样子

脑中不禁浮现出了各种抽象画的图像

缩在被窝里打起了退堂鼓

但是!

Java中的抽象没那么难

抽象方法是个啥?

通俗来说

就是不知道该咋做的方法

先别晕

我给你举个小栗子

我们创建一个类,什么类呢?病人类

病人就是生了病的人

生病的人要做什么呢?

得吃药

所以对于病人类来说

吃药就是一个方法

但是!

要用什么药?

他是该吃开塞露呢?

还是该喝风油精呢?

我们并不确定

这要看病人是哪儿有病

所以我们不知道这个方法具体要如何执行,就叫做抽象方法

概念搞清楚了

我们要如何定义抽象方法呢?

其实也简单

普通方法不加花括号,前面再加个abstract关键字,以分号结束

比如:

public abstract void tackMedicine();

写上去之后,你会惊奇的发现,报错了!!

为什么呢?

因为抽象方法只能在抽象类中使用

所以你的类定义还要稍稍改一下:同样也加一个abstract

写完后就是这个亚子↓

public abstract class Patients{

public abstract void tackMedicine();

}

ps:在抽象类中定义普通方法是完全没有问题的哟~

现在定义好抽象类和抽象方法了,我们该怎么用呢?

如果你像以前一样,直接暴力new一个该类的对象,就会被打pp 报错哟

因为我们的抽象类不能直接定义其对象

那我们该怎么用呢?

我们可以创建一个新的子类来继承我们的抽象父类

像这样:

public class ColdPtients extends Patients{

}

ColdPtients是感冒病人的意思,可不是冷藏病人哟

写完之后,你会惊奇的发现:又报错了!!!

停停停!

别打了别打了,再打孩子就傻了!

我们就差最后一步啦~

我们需要在子类中再写一遍父类中的抽象方法,并去掉abstract关键字,因为我们的子类已经具体了,不再需要抽象的方法。

public class ColdPtients extends Patients{

public void tackMedicine(){

System.out.println("来点儿清凉油");

}

}

好啦,我们现在就可以开始创建子类对象进行使用啦:

public static void main(String[] args){

ColdPatients coldPatient = new ColdPatients();

}

大功告成~

回顾一下:我们先创建了病人抽象类,在里面写了吃药这一抽象方法,然后用具体的子类来继承父类,并把父类中的抽象方法去掉abstract进行使用,我们就成功地给感冒的人开了一瓶清凉油。

我是被窝里的小何

祝大家生活愉快哟!

相关推荐

《吊屈原赋》译文及注释
bt365在线

《吊屈原赋》译文及注释

📅 07-03 👁️ 4599
揭秘:加藤鹰之手的真正含义
365bet投注网址

揭秘:加藤鹰之手的真正含义

📅 07-07 👁️ 5075
拳皇97攻略
365篮球直播吧

拳皇97攻略

📅 10-05 👁️ 6385