前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >面向对象基础——Java多态

面向对象基础——Java多态

原创
作者头像
来啦老弟
修改2019-08-27 10:27:11
4510
修改2019-08-27 10:27:11
举报
文章被收录于专栏:Roger的Java路

【多态的概念】

多态就是指对于同一个方法,调用形式的不同,表现形式也是不同的。


【多态的作用】

多态具有很好的可扩展性。

【多态的举例】

我们准备实现一个王者荣耀的英雄,这里面有多个英雄,其中operator类里的operate方法可以启动某个英雄,通过多态可以实现libai或者hanxin启动。重点是扩展性,如果有新的英雄只需要写出新英雄的类就可以,operator类里面不用改变任何的代码。

代码语言:java
复制
public class  {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		Hero hanxin= new HanXin();
		Hero libai=new LiBai();
		Operator operateHanxin= new Operator(hanxin);
		Operator operateLibai=new Operator(libai);
		operateHanxin.operate();
		operateLibai.operate();
		
	}
}

class Operator{
	
	private Hero hero;
	Operator(Hero h){
		this.hero=h;
	}
	
	void operate(){
		hero.start();
	}
}

class Hero{
	public void start( ){
		System.out.println("hero is ready to start");
	}	
}

class HanXin extends Hero{
	public void start(){
		
		System.out.println("HanXin is ready to start");
	}
}

class LiBai extends Hero{
	public void go(){
		System.out.println("Libai is ready start");
	}
}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档