From 8a553fe454f0d70d92cdc4e27827d48914386ac9 Mon Sep 17 00:00:00 2001 From: NCJOAQ <2627723488@qq.com> Date: Tue, 15 Jul 2025 00:32:56 +0800 Subject: [PATCH] =?UTF-8?q?feat(class23):=20=E5=A4=9A=E6=80=81=E3=80=81?= =?UTF-8?q?=E7=BB=A7=E6=89=BF=E3=80=81=E9=87=8D=E8=BD=BD=E7=BB=BC=E5=90=88?= =?UTF-8?q?=E7=BB=83=E4=B9=A0=EF=BC=8C=E5=BC=95=E5=85=A5lombok=E6=8F=92?= =?UTF-8?q?=E4=BB=B6=E7=AE=80=E5=8C=96=E8=AF=AD=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 Card 类,包含基本的存款和消费功能- 添加 GoldCard 和 SilverCard 类,分别实现不同的优惠策略 - 编写 Test 类进行功能测试 - 在项目中集成 Lombok 依赖,简化代码 --- HM-JAVA.iml | 9 +++++++++ src/class23/Card.java | 27 +++++++++++++++++++++++++++ src/class23/GoldCard.java | 26 ++++++++++++++++++++++++++ src/class23/SilverCard.java | 18 ++++++++++++++++++ src/class23/Test.java | 21 +++++++++++++++++++++ 5 files changed, 101 insertions(+) create mode 100644 src/class23/Card.java create mode 100644 src/class23/GoldCard.java create mode 100644 src/class23/SilverCard.java create mode 100644 src/class23/Test.java diff --git a/HM-JAVA.iml b/HM-JAVA.iml index c90834f..22cb66c 100644 --- a/HM-JAVA.iml +++ b/HM-JAVA.iml @@ -7,5 +7,14 @@ + + + + + + + + + \ No newline at end of file diff --git a/src/class23/Card.java b/src/class23/Card.java new file mode 100644 index 0000000..247b01d --- /dev/null +++ b/src/class23/Card.java @@ -0,0 +1,27 @@ +package class23; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +// lombok 注解,简化类的 getter/setter/toString/equals/hashCode 方法 +// IDEA需启用注解处理器 +public class Card { + private String carID; + private String name; + private int phone; + private double money; + public void deposit(double money) { + this.money += money; + } + public void consume(double money) { + if(this.money >= money){ + this.money -= money; + }else { + System.out.println("余额不足"); + } + } +} diff --git a/src/class23/GoldCard.java b/src/class23/GoldCard.java new file mode 100644 index 0000000..077b4d2 --- /dev/null +++ b/src/class23/GoldCard.java @@ -0,0 +1,26 @@ +package class23; + +public class GoldCard extends Card{ + public GoldCard(String carID, String name, int phone, double money) { + super(carID, name, phone, money); + } + @Override + public void consume(double money){ + System.out.println("您当前消费:"+ money); + System.out.println("优惠后价格:"+ money*0.8); + if (money=200){ + printTicket(); + }else { + System.out.println("您当前消费不满200,不能免费洗车!"); + } + + } + public void printTicket(){ + System.out.println("您消费了,请打印洗车票"); + } +} diff --git a/src/class23/SilverCard.java b/src/class23/SilverCard.java new file mode 100644 index 0000000..c7f66aa --- /dev/null +++ b/src/class23/SilverCard.java @@ -0,0 +1,18 @@ +package class23; + +public class SilverCard extends Card{ + public SilverCard(String carID, String name, int phone, double money) { + super(carID, name, phone, money); + } + @Override + public void consume(double money) { + System.out.println("您当前消费:"+ money); + System.out.println("优惠后价格:"+ money*0.9); + if (money