写一个Singleton出来。
Singleton 模式主要作用是保证在Java 应用程序中,一个类Class 只有一个实例存在。
一般Singleton 模式通常有几种种形式:
第一种形式: 定义一个类,它的构造函数为private 的,它有一个static 的private 的该类
变量,在类初始化时实例话,通过一个public 的getInstance 方法获取对它的引用,继而
调用其中的方法。
public class Singleton {
private Singleton(){}
//在自己内部定义自己一个实例,是不是很奇怪?
//注意这是private 只供内部调用
private static Singleton instance = new Singleton();
//这里提供了一个供外部访问本class 的静态方法,可以直接访问
public static Singleton getInstance() {
return instance;
}
}
第二种形式:
public class Singleton {
private static Singleton instance = null;
public static synchronized Singleton getInstance() {
//这个方法比上面有所改进,不用每次都进行生成对象,只是第一次
//使用时生成实例,提高了效率!
if (instance==null)
instance=new Singleton();
return instance;
}
}
其他形式:
定义一个类,它的构造函数为private 的,所有方法为static 的。
一般认为第一种形式要更加安全些
7、递归算法题1
一个整数,大于0,不用循环和本地变量,按照n,2n,4n,8n 的顺序递增,当
值大于5000 时,把值按照指定顺序输出来。
例:n=1237
则输出为:
1237,
2474,
4948,
9896,
9896,
4948,
2474,
1237,
public static void multiply(int n)
{
if(n>5000) return;
System.out.println(n);
multiply(n*2);
System.out.println(n);
}
Gaibaota(N) = Gaibaota(N-1) + n
7、递归算法题2
第1 个人10,第2 个比第1 个人大2 岁,依次递推,第8 个人多大?
package cn.itcast;
import java.util.Date;
public class A1 {
public static void main(String [] args)
{
System.out.println(computeAge(8));
}
public static int computeAge(int n)
{
if(n==1) return 10;
return computeAge(n-1) + 2;
}
}
public static void toBinary(int n,StringBuffer result)
{
if(n/2 != 0)
toBinary(n/2,result);
result.append(n%2);
}
第1题:
Singleton(单例)是设计模式的一种,为了保证一个类仅有一个实例,并提供一个访问它的全局访问点。
第2题:
9、有关Spring 的IoC容器中的singleton(单例模式)说法正确的是
A.每次从IoC容器中得到的都不是同一个对象。
B.每次从IoC容器中得到的都是同一个对象
C.IoC容器默认的设置是singleton
D.使用singleton可以提高系统性能
第3题:
有关Spring 的IoC容器中的singleton(单例模式)说法正确的是
A.每次从IoC容器中得到的都不是同一个对象。
B.每次从IoC容器中得到的都是同一个对象
C.IoC容器默认的设置是singleton
D.使用singleton可以提高系统性能
第4题:
采用()设计模式可保证一个类仅有一个实例
A.命令(Command)
B.单例(Singleton)
C.装饰(Decorate)
D.组合(Composite)
第5题:
【判断题】每次客户端请求singleton作用域的Bean时,Spring容器都会创建一个新的实例,并且不会管那些被配置成singleton作用域的Bean的生命周期。
A.Y.是
B.N.否