10.26

混沌武士丞發表於2024-10-26

[實驗任務一]:女媧造人

使用簡單工廠模式模擬女媧(Nvwa)造人(Person),如果傳入引數M,則返回一個Man物件,如果傳入引數W,則返回一個Woman物件,如果傳入引數R,則返回一個Robot物件。請用程式設計實現上述場景。

實驗要求:

1.畫出對應的類圖;

2. 提交原始碼;

//抽象產品類:Person介面

public interface Person {

void create();

}

//具體產品類:Man(男人)類

public class Man implements Person{

public Man() {

}

@Override

public void create() {

System.out.println("造男人");

}

}

//具體產品類:Woman(女人)類

public class Woman implements Person{

public Woman() {

}

@Override

public void create() {

System.out.println("造女人");

}

}

//具體產品類:Robot(機器人)類

public class Robot implements Person{

public Robot() {

}

@Override

public void create() {

System.out.println("造機器人");

}

}

//工廠類:Nvwa(女媧)類

public class Nvwa {

public static Person getPerson(String person) throws Exception {

if (person.equalsIgnoreCase("M")){

return new Man();

}else if (person.equalsIgnoreCase("W")){

return new Woman();

}else if (person.equalsIgnoreCase("R")){

return new Robot();

}else {

throw new Exception("對不起,不能造該類人");

}

}

}

//測試類

public class Test {

public static void main(String[] args) throws Exception {

Scanner type = new Scanner(System.in);

System.out.print("請輸入引數: ");

String s = type.nextLine();

Person person = Nvwa.getPerson(s);

person.create();

type.close();

}

}

3. 注意程式設計規範。