qq_62227344 2021-11-18 14:37 采纳率: 100%
浏览 79
已结题

台灯和灯泡类 真的觉得难

题目描述
设计一个台灯类(Lamp)其中台灯有灯泡类(Buble)的属性buble表示它所用的灯泡,boolean类型的属性isTurnOn,表示灯的开关状态;一个实例方法void turn()表示按一下台灯开关,从而引起台灯开关状态的变化,当台灯被关上时,输出“台灯被关上,灯黑了”当台灯被打开时,由其中的灯泡调用work()方法。一个带Buble类型参数和boolean参数的构造方法。
设计一个抽象的灯泡类(Buble),灯泡类有int类型的power属性表示灯泡瓦数,还有一个抽象的实例方法work()方法表示灯泡工作时会发光;灯泡类分别提供一个无参构造方法和一个参数的构造方法,没有参数时表示灯泡的瓦数为15瓦。再设计红灯泡类(RedBuble)和绿灯泡类(GreenBuble),他们都是继承灯泡类(Buble)的具体的子类,都将重写work(),分别显示“XX瓦的灯泡发出红光
”、“XX瓦的灯泡发出绿光~”,也提供两个构造方法。
在主类中创建两个台灯对象,其运行结果如样例输出所示。
public class Main {
public static void main(String[] args) {
Lamp lamp1 = new Lamp(new RedBuble(25), false);
Lamp lamp2 = new Lamp(new GreenBuble(), true);

    System.out.println("lamp1按两次开关:");
    lamp1.turn();
    lamp1.turn();

    System.out.println();

    System.out.println("lamp2按两次开关:");
    lamp2.turn();
    lamp2.turn();

}

}

输出样例
lamp1按两次开关:
25瓦的灯泡发出红光~
本台灯被关上,灯黑了~

lamp2按两次开关:
本台灯被关上,灯黑了~
15瓦的灯泡发出绿光~

用户代码

  • 写回答

1条回答 默认 最新

  • Zht_bs 2021-11-18 16:43
    关注

    给个变量,用变量做判断条件

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月26日
  • 已采纳回答 11月18日
  • 创建了问题 11月18日

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?