package Singleton;
/**
* 饿汉式
* @author dell(会占内存)
*
*/
/*public class Car {
private static Car car = new Car();
private Car(){};
public static Car getInstance(){
return car;
}
}*/
/**
* 懒汉式
* @author dell (线程不安全)
*
*/
/*public class Car {
private static Car car = null;
private Car(){};
public synchronized static Car getInstance(){
if(car==null){
car = new Car();
}
return car;
}
}*/
/**
*双锁机制
* @author dell (线程安全)
*
*/
public class Car {
private static Car car = null;
private Car(){};
public static Car getInstance(){
if(car==null){
synchronized (Car.class) {
if(car==null){
car = new Car();
}
}
}
return car;
}
}
/**
* 饿汉式
* @author dell(会占内存)
*
*/
/*public class Car {
private static Car car = new Car();
private Car(){};
public static Car getInstance(){
return car;
}
}*/
/**
* 懒汉式
* @author dell (线程不安全)
*
*/
/*public class Car {
private static Car car = null;
private Car(){};
public synchronized static Car getInstance(){
if(car==null){
car = new Car();
}
return car;
}
}*/
/**
*双锁机制
* @author dell (线程安全)
*
*/
public class Car {
private static Car car = null;
private Car(){};
public static Car getInstance(){
if(car==null){
synchronized (Car.class) {
if(car==null){
car = new Car();
}
}
}
return car;
}
}