2026/4/6 7:57:19
网站建设
项目流程
帝国cms 网站地址设置,app排名优化,凡科网app下载,网站管理系统后台不能发布文章了案例 — 融合继承、多态package com.itheima.demo;import java.util.Scanner;public class Test {public static void main(String[] args) {//1.创建卡片类#xff0c;以便创建金卡或者银卡对象#xff0c;封装车主的数据//2.定义一个卡片父类#xff0c;Card,定义金卡和银…案例 — 融合继承、多态packagecom.itheima.demo;importjava.util.Scanner;publicclassTest{publicstaticvoidmain(String[]args){//1.创建卡片类以便创建金卡或者银卡对象封装车主的数据//2.定义一个卡片父类Card,定义金卡和银卡的共同属性和方法//3.定义一个金卡类继承Card类金卡必须重写消费方法8折优惠,独有功能打印洗车票//4.定义一个银卡类继承Card类金卡必须重写消费方法9折优惠//5.办一张金卡创建金卡对象交给一个独立的业务支付机来完成存款消费GoldCardgcnewGoldCard(京A88888,小王,13888888888,5000);pay(gc);//6.办一张银卡创建金卡对象交给一个独立的业务支付机来完成存款消费SilverCardscnewSilverCard(晋A99999,小张,13899999999,2000);pay(sc);}//支付机用一个方法来刷卡既可能接收金卡也可能接收银卡publicstaticvoidpay(Cardc){System.out.println(请刷卡,请您输入当前消费的金额);ScannerscnewScanner(System.in);doublemoneysc.nextDouble();c.consume(money);}}//分割线packagecom.itheima.demo;importlombok.AllArgsConstructor;importlombok.Data;importlombok.NoArgsConstructor;//lombok可以自动为类实现getter、setter方法 无参数构造器toSpring方法等Data//NoArgsConstructorAllArgsConstructor//添加有参构造器publicclassCard{privateStringcarId;//车牌号码privateStringname;privateStringphone;privatedoublemoney;//余额//预存金额publicvoiddeposit(doublemoney){this.moneymoney;}//消费金额publicvoidconsume(doublemoney){this.money-money;}}//分割线packagecom.itheima.demo;publicclassGoldCardextendsCard{publicGoldCard(StringcarId,Stringname,Stringphone,doublemoney){super(carId,name,phone,money);}Overridepublicvoidconsume(doublemoney){System.out.println(您当前金卡消费money);System.out.println(优惠后的价格money*0.8);//在金卡子类中可直接调用父类的getMoney()而在测试类中则必须使用对象.getMoney()才能引用gc.getMoney()if(getMoney()money*0.8){System.out.println(您余额是getMoney()当前余额不足请存钱);return;//干掉方法}//更新金卡的账户余额setMoney(getMoney()-money*0.8);System.out.println(您当前金卡余额是getMoney());if(money*0.8200){printTicket();}else{System.out.println(您当前消费不满200不能免费洗车);}}//打印洗车票publicvoidprintTicket(){System.out.println(您消费了请打印洗车票);}}//分割线packagecom.itheima.demo;publicclassSilverCardextendsCard{publicSilverCard(StringcarId,Stringname,Stringphone,doublemoney){super(carId,name,phone,money);}Overridepublicvoidconsume(doublemoney){System.out.println(您当前银卡消费money);System.out.println(优惠后的价格money*0.9);if(getMoney()money*0.9){System.out.println(您余额是getMoney()当前余额不足请存钱);return;//干掉方法}//更新银卡的账户余额setMoney(getMoney()-money*0.9);System.out.println(您当前银卡余额是getMoney());}}ps://lombok可以自动为类实现getter、setter方法 无参数构造器toSpring方法等Data//NoArgsConstructorAllArgsConstructor//添加有参构造器还需点击以上图片Enable按键