java 中 有 23 种设计模式。
设计类的要求:
高内聚、低耦合。
高内聚:
类的内部的成员之间的关系是非常紧密的。
低耦合:
类和类之间的耦合度要尽量小。
简单工厂模式的作用:降低类和类之间的耦合度的。
/**
* 简单工厂模式,用来创建对象的
* @author yhl
*
*/
public class MyFactory {
//写一个工厂方法,通过传入的字符串的值,创建对应的类的对象并返回。
public static Person createPerson(String className){
Person person = null;
//根据类名,给person 赋值不同的子类对象
switch(className){
case "Chinese":
person = new Chinese("炎黄子孙中国人");
break;
case "America":
person = new America("美国佬");
break;
case "Japanese":
person = new Japanese();
break;
case "Indian":
person = new Indian("阿三");
break;
case "Italian":
person = new Italian("意大利");
break;
}
return person;
}
}
23 种设计模式中的很重要的一种。
作用:如果某一个类在一工程中只希望创建该类的唯一的一个对象。那么就可以使用单例设计模式,保证该类只被实例化一次。
单例设计模式:
SingleTon。
如何去设计一个单例类。
public class TestSingleTon {
public static void main(String[] args) {
MySingltTon mySingltTon = MySingltTon.getInstance();
System.out.println(mySingltTon.getData());//0
mySingltTon.setData(10);
System.out.println(mySingltTon.getData());//10
MySingltTon mySingltTon2 = MySingltTon.getInstance();
System.out.println(mySingltTon2.getData());//10
}
}
////需要只能被实例化一次的那个单例类。
//class MySingltTon{
// //只执行一次的代码,在类加载的时候执行
// //饿汉模式 可能会导致 启动延迟
// private final static MySingltTon singltTon = new MySingltTon();
//
// //私有化构造方法
// private MySingltTon() {
// }
//
// //写一个创建本类对象的方法。
//
// //写一个得到唯一实例的方法
// public static MySingltTon getInstance(){
// return singltTon;
// }
//
//}
//懒汉模式
class MySingltTon{
private int data;
public int getData() {
return data;
}
public void setData(int data) {
this.data = data;
}
private static MySingltTon singltTon;
private MySingltTon() {
}
//懒汉模式 第一使用该唯一实例 的时候进行对象的初始化
// //写一个得到唯一实例的方法
public static MySingltTon getInstance(){
if(singltTon == null){
singltTon = new MySingltTon();
}
return singltTon;
}
}
来源:CSDN
作者:胡说八道你也信
链接:https://blog.csdn.net/ClamJ092/article/details/103462315