Java多态浅谈

正文面临Java初学者,我们在教科书上常常会看到Java是多态的,可是通常的教材只停留在理论上,很少有实际操作。现时把多态个概念用代码简略描述一下子,因为本人水准有限,之所以在所难免有不足之处。

第一我们有这么几个种,计算机,个人电脑,笔记本电脑。

java 代码
一.class Computer{
2.
3. public void turnOn(){
4. }
5.}
现下有了计算机这个种,那么个人PC,笔记簿都是沿袭他。

java 代码
一.class PC extends Computer{
2. public void turnOn(){
3. System.out.println("PC has turn on");
4. }
5.}
6.
七.class NB extends Computer{
1. public void turnOn(){
2. System.out.println("NB has turn on");
3. }
4.}
我们看到,每个种都有一个 turnOn()步骤,而在父类中这个步骤是空的,子类中各自有不同的兑现,到这边或者还不太显然。如果有此外一个步骤,要接受这些类作为参数,就像这么

java 代码
一.class Test{
2. public void go(Computer computer){
3. computer.turnOn();
4. }
5.}
这个步骤接收的是基类参数,当然我们是可以把子类传接给步骤的,也应当这么做。

java 代码
一.go(new PC());
二.go(new NB());
这么他就会去调器具体子类的turnOn()步骤,之所以这两次调用的输出是不一样的.如若不要基类作为参数,我们想调用每个儿类的turnOn()步骤,那么即将些两个步骤体同样的go()而接收不同的参数的满载。

java 代码
一.public void go(PC computer){
2. computer.turnOn();
3. }
4.
五.public void go(NB computer){
1. computer.turnOn();
2. }
这么些也是准确的,但是这么会发生很多反复代码,并且也不易维护,当然这只是多态中最基本的一个一部分,Java多态机制再有很多特点,至于这些提议大家伙儿见见 java编程思维(think in java)这此书,里头讲的很详细,这边只是很简单的描述了一下子,还望个诸位好手不用见笑。

我的异常网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值