Files
Java/com/study/demo13/MemberService.java
2026-01-21 14:35:47 +08:00

63 lines
1.9 KiB
Java

package com.study.demo13;
abstract class Member {
protected int points;
public Member(int points) {
this.points = points;
}
abstract int calculateFinalPoints();
String getLevel() {
int finalPoints = calculateFinalPoints();
if (finalPoints >= 1000) {
return "VIP";
} else if (finalPoints >= 500) {
return "GOLD";
} else {
return "NORMAL";
}
}
}
class NormalMember extends Member {
public NormalMember(int points) {
super(points);
}
@Override
int calculateFinalPoints() {
return points;
}
}
class VIPMember extends Member {
public VIPMember(int points) {
super(points);
}
@Override
int calculateFinalPoints() {
return points * 2;
}
}
public class MemberService {
public static void main(String[] args) {
Member normal1 = new NormalMember(300);
Member normal2 = new NormalMember(600);
Member normal3 = new NormalMember(1200);
Member vip1 = new VIPMember(300);
Member vip2 = new VIPMember(400);
Member vip3 = new VIPMember(600);
System.out.println("NormalMember - 最终积分: " + normal1.calculateFinalPoints() + ", 等级: " + normal1.getLevel());
System.out.println("NormalMember - 最终积分: " + normal2.calculateFinalPoints() + ", 等级: " + normal2.getLevel());
System.out.println("NormalMember - 最终积分: " + normal3.calculateFinalPoints() + ", 等级: " + normal3.getLevel());
System.out.println("VIPMember - 最终积分: " + vip1.calculateFinalPoints() + ", 等级: " + vip1.getLevel());
System.out.println("VIPMember - 最终积分: " + vip2.calculateFinalPoints() + ", 等级: " + vip2.getLevel());
System.out.println("VIPMember - 最终积分: " + vip3.calculateFinalPoints() + ", 等级: " + vip3.getLevel());
}
}