public class Start {
public Register theReg = new Register();
public static Start go = new Start();
public static void main(String[] args) {
Register theReg = new Register();
go.regUsers();
if(theReg.logIn("jsmith","password")) {
System.out.println("You're logged in as " +
theReg.userLoggedIn.getName());
} else {
System.out.println("dang");
}
}
public void regUsers() {
Student regJoe =
theReg.regSeniorStaff("Joe smith", "password", "jsmith", 1);
}
}
public class Register {
public ArrayList<People> users;
public People userLoggedIn;
public Register() {
users = new ArrayList<People>();
users.add(new Student("john","password","jo",1));
userLoggedIn = null;
}
public Student regStudent(String name, String password,
String username, int stuId) {
Student s = new Student(name, password, username, stuId);
users.add(s);
return s;
}
}
我想我錯過了一些愚蠢的東西。像....Java ArrayList不允許我從外部構造函數中添加
啓動方法將創建一個新的Register
對象,其中有ArrayList
。然後稍微向下,開始使用regStudent
等方法註冊用戶。但是,只有Register
上的構造函數才允許我將對象添加到ArrayList
;調用方法稍後做同樣的事情就是不添加它們。它創建對象但不能添加它們。也不能刪除的東西,只有.get
在他們的作品。
任何幫助將是偉大的,謝謝!
您是否看到錯誤?如果是這樣,那是什麼? – 2009-12-10 22:21:01
沒有錯誤,基本上如果我從類外調用regStudent方法(創建了一個新的註冊對象),該方法創建新的學生對象,但無法將其添加到列表中。 構造函數中的users.add(...)部分工作,只是從來沒有在類中的任何其他方法。 – graeme 2009-12-10 22:22:36
向我們展示您調用regStudent的代碼,然後檢查結果。 – 2009-12-10 22:24:19