当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:14:00  来源:本站整理

初学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编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • <b>菜鸟初学Java的备忘录之第一次接触</b>
  • 初学Java语言之多态初体验
  • <b>初学Java从哪里开始</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .