当前位置:首页 > Java API 与类库手册 > 正文

Java优学网接口定义入门解析:从Vehicle到PaymentProcessor的完整指南

public interface Vehicle {

void start();
void stop();
int getMaxSpeed();

}

public interface PaymentProcessor {

boolean processPayment(double amount);
String getTransactionId();
void refund(String transactionId);

}

public class CreditCardProcessor implements PaymentProcessor {

@Override
public boolean processPayment(double amount) {
    // 具体的信用卡处理逻辑
    return authorize(amount) && capture(amount);
}

@Override
public String getTransactionId() {
    return generateUniqueId();
}

@Override
public void refund(String transactionId) {
    // 退款处理逻辑
    initiateRefund(transactionId);
}

}

// 不推荐:混合了用户管理和认证两个职责 public interface UserManager {

void createUser(User user);
void deleteUser(String userId);
boolean authenticate(String username, String password);
void changePassword(String userId, String newPassword);

}

// 推荐:分离成两个专注的接口 public interface UserService {

void createUser(User user);
void deleteUser(String userId);
User findUserById(String userId);

}

public interface AuthenticationService {

boolean authenticate(String username, String password);
void changePassword(String userId, String newPassword);

}

public interface PaymentProcessor {

boolean processPayment(Payment payment);
void refundPayment(String transactionId);
PaymentStatus checkStatus(String transactionId);

}

// 错误:类必须实现所有接口方法 public class CreditCardProcessor implements PaymentProcessor {

@Override
public boolean processPayment(Payment payment) {
    // 实现处理逻辑
    return true;
}

// 缺少refundPayment和checkStatus的实现

}

Java优学网接口定义入门解析:从Vehicle到PaymentProcessor的完整指南

你可能想看:

相关文章:

文章已关闭评论!