Java小案例|Java小案例(台灯类Lamp,有开关on这个方法...)

【Java小案例|Java小案例(台灯类Lamp,有开关on这个方法...)】
Java实现:台灯类Lamp测试

    • 1. 简介描述
    • 2. 题目描述
    • 3. 代码实现‘
    • 4. 最后的总结

1. 简介描述 最近发现很多大学测试都喜欢测试一些java小案例,今天给大家分享的是关于:继承extends和实现implements的问题,这个案例是以台灯类Lamp为案例说明的。
2. 题目描述 下面就是一些题目描述了:
设计一个台灯类Lamp其中台灯,有开灯(on)这个方法,设计一个灯泡类 其中有红灯泡(RedBuble) 和绿灯泡(GreenBuble) 他们都有一个发亮的方法, 请设计出一段代码可以使台灯开启
3. 代码实现‘ 对于下边的一些类和方法啊,大家可以直接copy就欧克。亲测有效!
  1. Lamp类
public class Lamp { private Bulb bulb; //灯泡public Bulb getBulb() { return bulb; }public void setBulb(Bulb bulb) { this.bulb = bulb; }/** * 通过父类Bulb调用子类重写父类的方法 * @param bulb */ public void on(Bulb bulb){ if(bulb instanceof RedBulb){ String r=bulb.bright(); System.out.println("打开台灯"+r); }else if(bulb instanceof GreenBulb){ String g=bulb.bright(); System.out.println("打开台灯"+g); }} }

  1. Bulb接口
public interface Bulb {public abstract String bright(); }

  1. RedBulb 类
    这里的RedBulb 是实现了上边的Bulb接口
public class RedBulb implements Bulb{/** * @return */ @Override public String bright() { return "红灯泡发亮"; } }

  1. GreenBulb 类
    这里的GreenBulb 是实现了上边的Bulb接口
public class GreenBulb implements Bulb {@Override public String bright() { return "绿灯泡发亮"; } }

  1. BulbTest 类
    这里是测试类,对于题目要求的一个实现,上边都是一些要实现下边测试用的一些原材料类和接口
public class BulbTest { public static void main(String[] args){Lamp lamp=new Lamp(); //父类引用指向子类对象Bulb red=new RedBulb(); Bulb green=new GreenBulb(); lamp.on(green); lamp.on(red); } }

4. 最后的总结 其实,这个java的小案例,主要是在考察:继承extends和实现implements多态
这里的继承实现主要表现在对于接口类和实现关系上,而多态主要体现的测试类中使用Bulb接口。
下面让我们看一下运行的结果:
Java小案例|Java小案例(台灯类Lamp,有开关on这个方法...)
文章图片

    推荐阅读