You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在创建Java Client对象时同步让用户创建Compte对象作为其属性

解决方案

首先修正Compte类构造方法的bug:原构造方法接收solde参数但直接赋值为0,应改为使用传入的参数值:

package bankpackage;

public class Compte {
    private long numero;
    private float solde;
    
    public Compte(long numero, float solde) {
        super();
        this.numero = numero;
        this.solde = solde; // 修正此处,使用传入的solde参数
    } 

    // 添加getter方法用于访问私有属性
    public long getNumero() {
        return numero;
    }

    public float getSolde() {
        return solde;
    }
}

接下来修改Client类,新增一个无需传入Compte的构造方法,在构造方法内部引导用户输入账户信息并创建Compte对象:

package bankpackage;

import java.util.Scanner;

public class Client {
    private String nom;
    private String emploi;
    private Compte compte;

    // 保留原构造方法,兼容原有使用场景
    public Client(String nom, String emploi, Compte compte) {
        this.nom = nom;
        this.emploi = emploi;
        this.compte = compte;
    }

    // 新增构造方法:创建Client时同步创建Compte
    public Client(String nom, String emploi) {
        this.nom = nom;
        this.emploi = emploi;
        
        Scanner scanner = new Scanner(System.in);
        System.out.println("请为该客户创建银行账户:");
        
        System.out.print("输入账户号码:");
        long numero = scanner.nextLong();
        
        System.out.print("输入初始余额:");
        float solde = scanner.nextFloat();
        
        this.compte = new Compte(numero, solde);
        scanner.close();
    }

    // 添加getter方法查看账户信息
    public Compte getCompte() {
        return compte;
    }
}

使用示例

在主类中直接创建Client对象,程序会自动引导创建关联的Compte:

package bankpackage;

public class Main {
    public static void main(String[] args) {
        // 直接创建Client,无需提前创建Compte
        Client client = new Client("张三", "程序员");
        
        // 验证账户是否创建成功
        System.out.println("客户账户号码:" + client.getCompte().getNumero());
        System.out.println("客户账户余额:" + client.getCompte().getSolde());
    }
}

如果需要优化代码结构,可以把创建Compte的用户输入逻辑抽成独立方法,让Client构造方法调用该方法,进一步提升代码可读性。

内容的提问来源于stack exchange,提问作者sherdean

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 22:45:06