P
Proton Projects - Moin
Hi all,
public class ChummaEx implements Cloneable
{
private static ChummaEx moin = null;
private String mName = null;
private ChummaEx()
{}
public static ChummaEx getInstance()
{
if(moin == null)
{
createInstance();
}
return moin;
}
private static void createInstance()
{
if(moin == null)
{
moin = new ChummaEx();
}
}
public void setName(String name)
{
mName = name;
}
public String getName()
{
return mName;
}
public static void main(String args[])
{
try
{
ChummaEx m1 = ChummaEx.getInstance();
ChummaEx m2 = (ChummaEx)m1.clone();
System.out.println(System.identityHashCode(m1));
System.out.println(System.identityHashCode(m2));
m1.setName("Moin");
System.out.println(m2.getName());
System.out.println(m1.getName());
}
catch(CloneNotSupportedException e)
{
System.out.println("In Catch");
e.printStackTrace();
}
}
}
Output :
11394033
4384790
null
Moin
SIngleton has the functionality to create only instance...I was trying
to beak the singleton behavior and after a long research i achieved it
by using the Cloneable interface...
My Questions are:
1. Whether the singleton behavior is overriden by the Cloneable
behavior
2. By implementing the Cloneable interface, how to retain the
Singleton behavior...
3. I tried to use the final key at some place to retain the singleton
behavior....but i failed.
4. Some group mates might have a question in their mind, why i have
used the Cloneable interface....as i already told, i was doing some
research over the singleton...
Kindly help me in this regard
Thanks
Moin
public class ChummaEx implements Cloneable
{
private static ChummaEx moin = null;
private String mName = null;
private ChummaEx()
{}
public static ChummaEx getInstance()
{
if(moin == null)
{
createInstance();
}
return moin;
}
private static void createInstance()
{
if(moin == null)
{
moin = new ChummaEx();
}
}
public void setName(String name)
{
mName = name;
}
public String getName()
{
return mName;
}
public static void main(String args[])
{
try
{
ChummaEx m1 = ChummaEx.getInstance();
ChummaEx m2 = (ChummaEx)m1.clone();
System.out.println(System.identityHashCode(m1));
System.out.println(System.identityHashCode(m2));
m1.setName("Moin");
System.out.println(m2.getName());
System.out.println(m1.getName());
}
catch(CloneNotSupportedException e)
{
System.out.println("In Catch");
e.printStackTrace();
}
}
}
Output :
11394033
4384790
null
Moin
SIngleton has the functionality to create only instance...I was trying
to beak the singleton behavior and after a long research i achieved it
by using the Cloneable interface...
My Questions are:
1. Whether the singleton behavior is overriden by the Cloneable
behavior
2. By implementing the Cloneable interface, how to retain the
Singleton behavior...
3. I tried to use the final key at some place to retain the singleton
behavior....but i failed.
4. Some group mates might have a question in their mind, why i have
used the Cloneable interface....as i already told, i was doing some
research over the singleton...
Kindly help me in this regard
Thanks
Moin