0
我的任務是:「在SecuredNotepad構造函數中,如果密碼不包含任何數字,請不要創建SecuredNotepad對象!構造函數 - 如果錯誤驗證不會創建任何對象
public class SimpleNotepad {
private Page[] pages;
public SimpleNotepad(final int numberOfPages) {
pages = new Page[numberOfPages];
for (int i = 0; i < pages.length; i++) {
pages[i] = new Page(String.valueOf(i + 1));
}
}
}
public class SecuredNotepad extends SimpleNotepad {
private String pass;
public SecuredNotepad(int numberOfPages, String pass) {
super(numberOfPages);
if (pass.matches(".*\\d+.*")
{
this.pass = pass;
}
else
{
System.out.println("Password must contain at least one number!");
}
}
}
在SecuredNotepad的構造我必須調用超類,因爲SecuredNotepad延伸SimpleNotepad。但是,在SecuredNotepad的構造函數中,我對參數String pass
(必須至少包含一個字母)進行驗證。如果參數String pass
沒有通過驗證(我的意思是不包含任何字母),是否有任何可能的方式,構造函數根本不會創建任何對象?如果沒有,是否有任何方式創建的對象將是類SimpleNotepad的實例,但不是SecuredNotepad的實例?
非常感謝! – user3637171 2014-10-04 09:43:28