JAvaにおけるファクトリモードコード
1409 ワード
簡単な3つのコードですが、工場モードの妙用を簡単に理解することができます.一般的に、私たちがオブジェクトを作成するのはnewでオブジェクトを作成しますが、必要なオブジェクトが多い場合、私たちは1つ1つ作成することはできません.このように複雑すぎて、間違いやすいので、工場モードが誕生しました.私たちは1つの方法を呼び出すだけです.オブジェクトを作成し続けることで、言語の堅牢性を向上させ、コードを直接見ることができます.
package com.test.csdn;
public class Student {
/*public Student(String str) {
}*/
}
package com.test.csdn;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import javax.rmi.ssl.SslRMIClientSocketFactory;
public class Factory {
public static Object newInstance(Class clazz) throws NoSuchMethodException {
Object object = null;
try {
Constructor constructor= clazz.getConstructor();
object = constructor.newInstance();//
} catch (NoSuchMethodException | SecurityException e) {
throw new NoSuchMethodException(clazz.getName()+" ");
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
return object;
}
}
package com.test.csdn;
public class Test{
public static void main(String[] args) throws NoSuchMethodException {
Object obj = Factory.newInstance(Student.class);
System.out.println(obj);
}
}