接口例_龟车赛跑_Java

此例演示java中接口的一般用法。

屋子里有一群程序员,每个人在写着自己的类,共同构建一个世界。

项目经理突然出现:“打扰大家一下,公司决定举办一个竞速比赛,你们写的类都可以参加。为了比赛的顺利进行,大家的类都必须要实现一个速度接口和一个保养接口。速度接口要完成启动、提速、刹车三个动作;保养接口要完成加油、换胎两个动作,具体内容见接口文件,请吃饱了没事干的程序员主动携你们的类报名参加!”

速度接口如下:

public interface SuDu
{
	String start();
	String rise_Speed();
	String stop();
}

  

保养接口如下:

public interface BaoYang
{
	String add_Oil();
	String feet();
}

  

最终,有两个类报名参加,它们分别是:汽车类(car)和乌龟类(Oogway)

它们继承了项目经理要求的接口,并对接口进行了实现。代码如下:

汽车类:

public class Car implements BaoYang,SuDu
{
	public String start()
	{
		return "汽车现在开始启动了,轮胎在地面上磨起了阵阵黑烟,遮天蔽日。
";
	}
	public String rise_Speed()
	{
		return "只见驾驶员咔咔换档,汽车速度很快升到了200KM/H,而且还在增加~!!
";
	}
	
	public String stop()
	{
		return "只听"吱~~"的一声,汽车险险停住,差点冲出跑道,压死一只蚂蚁。
";
	}
	public String add_Oil()
	{
		return "汽车换胎的时候,静静地停在这里,什么也不想,油箱里灌注着我需要的血液……人生就应该这样
";
	}
	public String feet()
	{
		return "工程师换完轮胎,我又可以蹦蹦跳跳冲上公路了!
";
	}
}

  

乌龟类:

public class Oogway implements BaoYang,SuDu
{
	public String start()
	{
		return "乌龟现在开始启动了,只见它爪子用力地刨啊刨,可咋就不动地方呢?
";
	}

	public String rise_Speed()
	{
		return "乌龟变身为忍者神龟,它开始两条腿向前冲了~
";
	}

	public String stop()
	{
		return "只见乌龟全身缩进龟壳,"吱~~"的一声,龟壳和地面摩擦,擦出阵阵火星!
";
	}

	public String add_Oil()
	{
		return "本龟四脚朝天,喝着新鲜的露珠,心里想着:能来份兔子肉就完美了~
";
	}

	public String feet()
	{
		return "剪剪龟指甲,再图个紫色的指甲油,今天一定要跑出新的世界纪录!
";
	}
}

  

因为直接实现了接口,项目经理就不用对它们进行严格的检查了。

竞速大赛如期举行,因为报名参加的只有两个类,项目经理直接完成了主程序(它甚至都没仔细看下这两个类,因为不需要)

主程序如下:

public class c1
{
	public static void main(String[] args)
	{
		// TODO Auto-generated method stub
		System.out.println("台上十分钟,请看:
");
		System.out.println(race());
		System.out.println("-----------------------
");
		System.out.println("台下十年功,请看:
");
		System.out.println(rest());
	}
	public static String race()
	{
		SuDu s1,s2;
		String result="";
		s1=new Car();
		s2=new Oogway();
		result+=s1.start();
		result+=s2.start();
		result+=s1.rise_Speed();
		result+=s2.rise_Speed();
		result+=s1.stop();
		result+=s2.stop();
		return result;
	}
	public static String rest()
	{
		BaoYang s1,s2;
		String result="";
		s1=new Car();
		s2=new Oogway();
		result+=s1.add_Oil();
		result+=s2.add_Oil();
		result+=s1.feet();
		result+=s2.feet();
		return result;
	}
}

  

程序执行结果……自己分析以后运行一下吧。。。

原文地址:https://www.cnblogs.com/wanjinliu/p/11002833.html