赞
踩
/*设计一个台灯类(Lamp)其中台灯有灯泡类(Buble)这个属性,还有开灯(on)这个方法。
设计一个灯泡类(Buble),灯泡类有发亮的方法,其中有红灯泡类(RedBuble)和绿灯泡类(GreenBuble)
他们都继承灯泡类(Buble)一个发亮的方法。
* */
- //测试类
- public class Test {
- public static void main(String[] args) {
- //测试红灯
- //有名对象
- RedBule rb=new RedBule();
- rb.shine();
- System.out.println("---------");
- //测试台灯类
- //有参构造方法赋值
-
- Lamp lamp=new Lamp(rb);//形参如果是一个引用类型,需要传递该引用类型的具体对象
- lamp.on();
- System.out.println("-------------");
- Lamp lamp2=new Lamp(new GreenBuble());//匿名对象
- lamp2.on();
- }
- }

- package com.lin.final_test;
- //台灯类
- public class Lamp {
- //类属性
- //声明一个Buble类型变量
- public Buble buble;
- public Lamp() {}
- public Lamp(Buble buble) {//构造方法也是方法,不过是特殊的方法
- //形参如果是一个引用类型,需要传递该引用类型的具体对象
- this.buble=buble;
- }
-
- //开灯方法
- public void on() {
- buble.shine();//发亮
- }
- }

- package com.lin.final_test;
-
- public class Buble {
- //发亮的方法
- public void shine() {
- System.out.println("灯泡可以发光");
- }
- }
- package com.lin.final_test;
- //红花灯泡
- public class RedBule extends Buble {
- @Override
- public void shine() {
- System.out.println("可以发红红光");
- }
- }
- package com.lin.final_test;
-
- //绿灯跑
- public class GreenBuble extends Buble {
- @Override
- public void shine() {
- System.out.println("可以发绿光");
- }
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。