例题1:写一个Singleton出来。
答案:Singleton模式的主要作用是保证在java应用程序中,一个类Class只有一个实例存在。
Singleton模式通常有两种形式。
第一种形式:定义一个类,它的构造函数为private的,他有一个static的private的该类变量,在类初始化时实例化,通过一个
public的getInstance方法获取对对象的引用,鸡儿调用其中的方法。
public class Singleton{
private Singleton(){};
private static Singleton instance = new Singleton();
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;
}
}
例题2: 简述Struts下的设计模式?
答案: MVC(Model/View/Controller)模式是一种使用的较多的设计模式。MVC包括三类对象,Model是应用对象,View是它在屏幕上的表示,Controller定义用户界面对用户输入的响应方式。
模型是应用程序的主体部分。模型表示业务数据或者业务逻辑;视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面;控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。MVC模式的出现不仅实现了功能模块和显示模块的分离,同时,它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性。
不一定所有的JSP应用都改采用MVC模式,但对于大型应用来说,最好还是采用MVC模式。若不使用MVC模式,用户界面设计时往往将这些对象混在一起,而MVC则将它们分离以提高灵活性和复用性。