簡體   English   中英

Java封裝構造方法

[英]Java Encapsulation Constructor Method

大家好,我正在為學生健康編寫Java代碼。 我正在嘗試做的是

A)構造一個僅初始化前兩個數據字段(名稱和出生日期)的構造方法。 同樣,增加患者計數器數據字段。

B)其次,構造一個初始化所有數據字段的構造方法。 同樣,增加患者計數器數據字段。

如果我正確地想起一個用於初始化前兩個變量(在本例中為name和DOB)的構造函數方法,它會像這樣。

public emr (String name, Long dob){

但是,當我將其放入我的emr類中時,我的主要方法出現了錯誤,提示“構造函數emr類無法應用於給定類型”

在我的主要方法中

package studenthealthservices;

public class Studenthealthservices {

public static void main(String[] args) {
    emr p1 = new emr();

    p1.setName("Colin");

    emr p2 = new emr();
    p2.setName("Anquan");

    emr p3 = new emr();
    p3.setName("Buster");

    emr p4 = new emr();
    p4.setName("Hunter");

    emr p5 = new emr();
    p5.setName("Nori");

}

}

這是我的emr類代碼

package studenthealthservices;

public class emr {

private String name;
private Long dob;
private String rfv;
private double bodyt;
private double hr;
private String diag;
private String pmeds;

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

public Long getDob() {
    return dob;
}

public void setDob(Long dob) {
    this.dob = dob;
}

public String getRfv() {
    return rfv;
}

public void setRfv(String rfv) {
    this.rfv = rfv;
}

public double getBodyt() {
    return bodyt;
}

public void setBodyt(double bodyt) {
    this.bodyt = bodyt;
}

public double getHr() {
    return hr;
}

public void setHr(double hr) {
    this.hr = hr;
}

public String getDiag() {
    return diag;
}

public void setDiag(String diag) {
    this.diag = diag;
}

public String getPmeds() {
    return pmeds;
}

public void setPmeds(String pmeds) {
    this.pmeds = pmeds;
}

}

如果不編寫構造函數,則默認情況下會創建不帶參數的公共構造函數。

默認的構造函數是編寫new emr()時在main中使用的構造函數。

但是,當您編寫自己的構造函數時,將不會創建默認構造函數,因此main將不再編譯。 如果您希望main在編寫新的構造函數后仍繼續編譯,則還必須編寫第二個不帶參數的構造函數。

暫無
暫無

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

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