Java_J2ee笔试总结(java算法)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.求两个数的最大公约数

解答:

欧几理德原理:辗转相除法

public static int zdgys(int a,int b){

int x = a%b;

if(x==0) return b;

else return zdgys(b,x);

}

2.关于java垃圾回收器的认识

解答:

对于GC来说,当程序员创建对象时,GC就开始监控这个对象的地址、大小以及使用情况。通常,GC采用有向图的方式记录和管理堆(heap)中的所有对象。通过这种方式确定哪些对象是"可达的",哪些对象是"不可达的"。当GC确定一些对象为"不可达"时,GC就有责任回收这些内存空间。可以。程序员可以手动执行System.gc(),通知GC运行,但是Java语言规范并不保证GC 一定会执行。

3.请问如何设计一个类,使其只能被初始化为一个实例。

解答:

Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。

第一种形式: 定义一个类,它的构造函数为private的,它有一个static的private的该类变量,在类初始化时实例话,通过一个public的getInstance方法获取对它的引用,继而调用其中的方法。附件:

package parent.career.blest;

class Singleton {

private Singleton(){}//在外部用new关键字会报错,只供内部使用

//注意这是private 只供内部调用

private static Singleton instance = new Singleton();

//这里提供了一个供外部访问本class的静态方法,可以直接访问

public static Singleton getInstance() {

return instance;

}

public void say(String str){

System.out.println(str);

}

}

class commonClass{

public commonClass(){

System.out.println("这是一个普通类");

}

}

public class mySingleton{

public static void main(String args[])

{

Singleton sl = Singleton.getInstance();

Singleton sl2 = Singleton.getInstance();

sl.say("hello,world!");

sl2.say("hello,world again!");

System.out.println(sl==sl2);//输出true,说明sl,sl2指向同一个实例

commonClass cC = new commonClass();

commonClass cC2 = new commonClass();

System.out.println(cC==cC2);//输出false,说明cC,cC2分别指向不同的实例

}

}

4.有一个1001个元素的数组a[n],每个元素都在1到1000这些整数中取值,其中有一个数值重复了,现在要设计一个算法找出这个数字,且每个元素只能被访问一次。不能用辅助的存储容器。

解答:

This number = (a[0]+a[1]+a[3]+......a[1000])-(1+2+3+ (1000)

servlet生命周期以及servlet基本构架

解答:

servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。这个生存期由javax.servlet.Servlet接口的init,service和destroy方法表达。

Servlet的基本架构:

public class ServletName extends HttpServlet {

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

}

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

}

}

5.死锁的四个必要条件

解答:

>互斥条件:某段时间内某资源只能由一个进程使用。

>请求和保持:进程因请求资源而阻塞时,对已分配给它的资源保持不放。

>不剥夺条件:资源在未使用完前,不能被剥夺,由使用进程释放。

>环路条件:发生死锁时,有向图必构成一环路。

7.EJB是基于哪些技术实现的?并说出SessionBean和EntityBean的区别,StatefulBean和StatelessBean的区别。

解答:

EJB包括Session Bean、Entity Bean、Message Driven Bean,基于JNDI、RMI、JAT等技术实现。SessionBean在J2EE应用程序中被用来完成一些服务器端的业务操作,例如访问数据库、调用其他EJB组件。EntityBean被用来代表应用系统中用到的数据。

对于客户机,SessionBean是一种非持久性对象,它实现某些在服务器上运行的业务逻辑。

相关文档
最新文档