簡體   English   中英

java中的構造函數以及get和set方法

[英]Constructors and get and set methods togther in java

嗨,我現在有這個代碼作為一個基本程序,它只獲取一個人的姓名、電話號碼和帳號,然后在 main 方法中打印出來。

import java.util.Scanner;

public class CustomerData {
    String name;
    String phoneNumber;
    String accountCode;

    String setname() {
        Scanner scanner = new Scanner(System.in);

        System.out.println("What is customers name ?");
        String name = scanner.nextLine();

        return name;

    }

    String setNumber() {
        Scanner scanner = new Scanner(System.in);

        System.out.println("What is customers Phone Number ?");
        String phone = scanner.nextLine();

        return phone;
    }

    String setAccountCode() {
        Scanner scanner = new Scanner(System.in);

        System.out.println("What is customers account code ?");
        String account = scanner.nextLine();
        scanner.close();

        return account;
    }

    public void getInfo() {
        System.out.println("\nCustomer Name: "+this.name);
        System.out.println("Customer Phone Number: "+this.phoneNumber);
        System.out.println("Customer Account Code: "+this.accountCode);
    }

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

        CustomerData p1 = new CustomerData();
        p1.name = p1.setname();
        p1.phoneNumber = p1.setNumber();
        p1.accountCode = p1.setAccountCode();

        p1.getInfo();

    }
}

但是我想在我的對象中使用這樣的構造函數

import java.util.Scanner;

public class CustomerData {
    String name;
    String phoneNumber;
    String accountCode;

    CustomerData(String name, String phoneNumber, String accountCode){
        this.name = name;
        this.phoneNumber = phoneNumber;
        this.accountCode = accountCode;
    }

    CustomerData(){
        this.name = "Unknown";
        this.phoneNumber = "Unknown";
        this.accountCode = "No Registered Account Code";
    }

    String setname() {
        Scanner scanner = new Scanner(System.in);

        System.out.println("What is customers name ?");
        String name = scanner.nextLine();

        return name;

    }

    String setNumber() {
        Scanner scanner = new Scanner(System.in);

        System.out.println("What is customers Phone Number ?");
        String phone = scanner.nextLine();

        return phone;
    }

    String setAccountCode() {
        Scanner scanner = new Scanner(System.in);

        System.out.println("What is customers account code ?");
        String account = scanner.nextLine();
        scanner.close();

        return account;
    }

    public void getInfo() {
        System.out.println("\nCustomer Name: "+this.name);
        System.out.println("Customer Phone Number: "+this.phoneNumber);
        System.out.println("Customer Account Code: "+this.accountCode);
    }

}

是否可以在添加了此構造函數的情況下重用相同的 main 方法,或者我是否需要更改我的 main 方法。

不,您不需要更改您的主要方法。 您可以調用參數化構造函數,如 -

CustomerData p1 = new CustomerData("Mary", "9191919191", "12345");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM