【java】Diseño e implementación de cuenta de tarjeta de crédito.

【Introducción del caso】

  1. Descripción de la tarea
    : Diseñar e implementar una clase de cuenta de tarjeta de crédito (CreditCard) con un límite de sobregiro unificado y una clase de demostración (CreditCardDemo) para pruebas. Cree un objeto de tarjeta de crédito en la clase de demostración para probarlo.
    La mayor diferencia entre una tarjeta de crédito y una cuenta bancaria normal es el sobregiro permitido. Si el usuario retira dinero, si (monto del retiro
    ⩽ saldo de la cuenta + límite de sobregiro), el retiro se puede realizar normalmente; de ​​lo contrario, el retiro falla.
    Para evitar complicar el problema aquí, necesitamos implementar una clase de cuenta de tarjeta de crédito simple, la cuenta tiene un
    nombre y un saldo (puede ser positivo o negativo, un número negativo como -1000 significa que se han sobregirado 1000 yuanes). y la
    información del límite máximo de sobregiro (0).
    Se requiere que ambas clases se coloquen en el paquete cn.edu.gpnu.bank.

[Objetivos del Caso]
 Aprender a analizar las ideas lógicas para realizar la tarea de "Diseño e Implementación de Cuentas de Tarjetas de Crédito".
 Capaz de completar de forma independiente la redacción, compilación y operación del código fuente del programa "Diseño e implementación de cuentas de tarjetas de crédito".
 Dominar la escritura y el uso de atributos estáticos y métodos estáticos.  Domine los puntos de conocimiento de constructores, métodos de establecimiento y métodos de obtención en Java.
[Idea de caso]
Según la descripción de la tarea y el diagrama de ejecución, podemos determinar los atributos y métodos de la clase de cuenta de tarjeta de crédito.
Insertar descripción de la imagen aquí
【Ejecutar código】

1. Clase de tarjeta de crédito

package practice.bank;

public class CreditCard {
    
    
    public String name;
    public double balance;
    public double amount;
    static double maxOverdraft;

    public CreditCard(String name, double balance, double amount) {
    
    
        this.name = name;
        this.balance = balance;
        this.amount = amount;
    }

    public CreditCard() {
    
    

    }

    public String getName() {
    
    
        return name;
    }

    public void setName(String name) {
    
    
        this.name = name;
    }

    public double getBalance() {
    
    
        return balance;
    }

    public void setBalance(double balance) {
    
    
        this.balance = balance;
    }

    public double getAmount() {
    
    
        return amount;
    }

    public void setAmount(double amount) {
    
    
        this.amount = amount;
    }

    static {
    
    
        maxOverdraft=3000;
    }

    public void deposit(double amount) {
    
    
        balance = amount;
    }

    public boolean withdraw(double amount) {
    
    
        if (amount <= balance + maxOverdraft) {
    
    
            System.out.println("取出" + amount + "元" + "成功!");
            System.out.println("账户信息" + "姓名:" + this.name+
                    ",余额:" + this.balance+ ",最大透支额:" + maxOverdraft);
            return true;
        }
            else{
    
    
                System.out.println("余额不足,取款"+amount+"元"+"失败!");
                return  false;
            }
    }

    public String info() {
    
    
        return"账户信息"+"姓名" + this.name +
                ", 余额" + this.balance+
                ", 最大透支额" + maxOverdraft;
    }
}

2.Clase de demostración de tarjeta de crédito

package practice.bank;

public class CreditCardDemo {
    
    
    public static void main(String[] args){
    
    

        CreditCard creditCard = new CreditCard();
        creditCard.setName("张三");
        System.out.println(creditCard.info());

        System.out.println("**测试1:从信用卡取出5000元。");
        creditCard.withdraw(5000);

        System.out.println("**测试2:往信用卡存2000元。");
        creditCard.deposit(2000);
        System.out.println(creditCard.info());

        System.out.println("**测试3:再从信用卡取出5000元。");
        creditCard.withdraw(5000);

    }
}

【resultado de la operación】
Insertar descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/m0_52703008/article/details/126200647
Recomendado
Clasificación