本帖最后由 杨丽静 于 2014-1-9 16:02 编辑
public class Test
{
public static void main(String[] args)
{
//创建ArrayList对象
ArrayList<Person> al = new ArrayList<Person>();
//添加5个元素
al.add(Person.getPerson("张三",19));
al.add(Person.getPerson("李四",14));
al.add(Person.getPerson("王五",12));
// 用迭代器方法取出元素:
Iterator<Person> it = al.iterator();//获得一个迭代子
//判断是否有下一个元素
while(it.hasNext())
{
Person str = it.next();//得到下一个元素
System.out.println(str);//循环打印字符串
}
}
}
class Person
{
//私有化Person属性
private static String name;
private static int age;
//私有化带有参数的构造方法
private Person(String name,int age)
{
this.name = name;
this.age = age;
}
//创建一个空的静态的本类对象
private static Person p = null;
//对外提供调用本类对象的方法
public static Person getPerson(String name,int age )
{
if(p == null)
p = new Person(name, age);//创建本类对象
return p;
}
//提供toString方法
public String toString()
{
return name +"的年龄是"+age+"岁";
}
}
这个小程序打印的结果为神魔是
张三的年龄是19岁张三的年龄是19岁张三的年龄是19岁
自己又想明白了单例设计就是解决让内存中只能存在一个对象。
|
|