初学Java语言之多态初体验[Java编程]
本文“初学Java语言之多态初体验[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
首先我们有这样几个类,电脑,个人电脑,笔记本电脑.
class Computer{
public void turnOn(){
}
}
目前有了电脑这个类,那么个人PC,笔记本都是担当他.
class PC extends Computer{
public void turnOn(){
System.out.println("PC has turn on");
}
}
class NB extends Computer{
public void turnOn(){
System.out.println("NB has turn on");
}
}
我们看到,每个类都有一个 turnOn()办法,而在父类中这个办法是空的,子类中各自有差别的实现,到这里大概还不太明显.假若有别的一个办法,要承受这些类作为参数,就像这样
class Test{
public void go(Computer computer){
computer.turnOn();
}
}
这个办法接纳的是基类参数,当然我们是可以把子类传送给办法的,也应当这么做
go(new PC());
go(new NB());
这样他就会去调用具体子类的turnOn()办法,所以这两次调用的输出是不一样的.假如不用基类作为参数,我们想调用每个子类的turnOn()办法,那么就要些两个办法体一样的go()而接纳差别的参数的重载.
public void go(PC computer){
computer.turnOn();
}
public void go(NB computer){
computer.turnOn();
}
这样些也是精确的,但是这样会产生很多反复代码,并且也不易保护,当然这只是多态中最基本的一个部份,Java多态机制还有很多特点,关于这些倡议大家看看 java编程思惟(think in java)这本书,里面讲的很具体,这里只是很简单的描写了一下,还望个各位高手不要见笑.
以上是“初学Java语言之多态初体验[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
- ·上一篇文章:理解Spring的打包办法
- ·下一篇文章:Java调集接口综述
- ·中查找“初学Java语言之多态初体验”更多相关内容
- ·中查找“初学Java语言之多态初体验”更多相关内容