--------------------
package com.cn.thread;
public class Singleton {
private String companyName;
private String bossName;
private static Singleton single = null;
public String getCompanyName() {
return companyName;
}
public void setCompanyName(String comString) {
this.companyName = comString;
}
public String getBossName() {
return bossName;
}
public void setBossName(String bossName) {
this.bossName = bossName;
}
public static Singleton getSingle() {
return single;
}
public static void setSingle(Singleton single) {
Singleton.single = single;
}
private Singleton() {
}
public synchronized static Singleton getInstance() {
if (single == null) {
single = new Singleton();
}
return single;
}
public void Info()
{
System.out.println("公司名称:"+companyName+","+"公司董事长:"+bossName);
}
}
------------------main
package com.cn.thread;
public class Instance {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Singleton singleton = Singleton.getInstance();
singleton.setBossName("公子白");
singleton.setCompanyName("子白集团");
singleton.Info();
System.out.println(singleton.getBossName());
Singleton singleton2 = Singleton.getInstance();
singleton2.setBossName("公子白大哥");
if (singleton.getBossName() == singleton2.getBossName()) {
System.out.println("相同的名字");
System.out.println("相同的名字是" + singleton.getBossName() + ","
+ singleton2.getBossName());
} else {
System.out.println("不同的名字");
}
System.out.println(singleton.getBossName());
if (singleton == singleton2) {
System.out.println("创建的是一个单例");
} else {
System.out.println("is a different");
}
singleton.setCompanyName("子白集团公司");
singleton2.setCompanyName("子白集团公司1");
System.out.println(singleton.getCompanyName() == singleton2
.getCompanyName());
System.out.println(singleton.getCompanyName());
System.out.println(singleton2.getCompanyName());
}
}
------------------------输出:
公司名称:子白集团,公司董事长:公子白
公子白
相同的名字
相同的名字是公子白大哥 公子白大哥
公子白大哥
创建的是一个单例
true
子白集团公司1
子白集团公司1