【发布时间】:2021-06-29 15:07:00
【问题描述】:
我正在使用 Java,我的代码构建成功,但我没有得到我想要的结果。我正在尝试将主类中用户的数据输入传递给另一个名为 Staff 的类。我猜在运行时我的数据永远不会通过 set 和 get 方法来检查。我怎样才能让它们发挥作用?
主类
System.out.print("please enter staff ID: ");
String staffID = in.next();
System.out.println("please enter staff first name and last name:");
String Fname = in.next();
String Lname = in.next();
Staff staff= new Staff (staffID, Fname, Lname);
System.out.print(staff.toString());
员工班
public class Staff {
private String StaffID;
private String Fname;
private String Lname;
Staff (String StaffID, String Fname, String Lname){
this.StaffID = StaffID;
this.Fname = Fname;
this.Lname = Lname;
}
//set & get Staff ID
public void setStaffID (String StaffID){
if (this.StaffID.length() <= 7) {
this.StaffID = StaffID;
}
else
System.out.println("ID have to be less than or equal 7 digits");
}
public String getStaffID (){
return this.StaffID;
}
//set & get First name
public void setFname(String Fname){
if (Fname.matches("[a-zA-Z]")){
this.Fname =Fname;
}
else
System.out.print("Name have to contains letters only");
}
public String getFname(){
return this.Fname;
}
//set & get Last name
public void setLname(String Lname){
if (Fname.matches("[a-zA-Z]")){
this.Lname =Lname;
}
else
System.out.print("Name have to contains letters only");
}
public String getLname(){
return this.Lname;
}
@Override
public String toString(){
return "\n\t\tStaff information \nID: " + this.StaffID + "\nFirst name: " + this.Fname
+"\nLast name: " +this.Lname ;
}
【问题讨论】:
-
Cannot reproduce。 --- 在给出的代码中没有使用 getter。
标签: java class constructor