本文共 4280 字,大约阅读时间需要 14 分钟。
一、基础 1.super()与this()的区别 super从子类中调用父类的构造方法;this在同一类内调用其他方法 super()调用父类的无参构造方法;this()调用本身这个类的无参构造方法 2.作用域public、protected、private以及不写时的区别 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × √ √ × × private √ × × × 3.在Java中,如何跳出当前的多重嵌套循环 在Java中,要想跳出多重循环,可以在外面的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的break语句,即可跳出外层循环 4.一个“.java”源文件中是否可以包括多个类(不是内部类)?有什么限制 一个“.java”源文件里面可以包含多个类,但是只允许有一个public类,并且类名和文件名一致。 5.排序都有哪几种方法 插入排序、交互排序、归并排序、选择排序 6.Overload和Override的区别 Overload:重载 编译时的多态 在同一个类里面,两个方法名相同,参数列表不同,返回值可以相同,可以不相同。 Override:重写 运行时的多态 子类中,与父类中的某个方法的名称和参数完全相同,子类重写的方法的访问权限不可以比父类小。 7.Final类有特点 final最终, 这个类不能再被继承了; 里面的方法不能被重写了; 里面的变量都是静态的; 8.&和&&的区别 &位运算 非短路 &&逻辑运算 短路 9.GC是什么?为什么要有GC 垃圾收集器 内层泄漏,自动的将没有引用的对象清理掉。 10.Math.round(11.5)等于多少。Math.round(-11.5)等于多少 12 -11 二、初中级 11.什么是类的反射机制? 类的反射机制,通过类的类名,可以获得类的字段,方法,构造方法,接口等。 通过类名,可以实例化这个类。 在hibernate和spring都有应用反射机制。 在设计模式中有一个代理模式中应用反射机制。 12.得到Class的三个过程是什么? 对象.getClass() 类.class或Integer.type(int) Integer.class(java.lang.Integer) Class.forName();() 13.说出一些常用的类,包,接口,请各举5个? 常用的类:BufferedReader BufferedWriter FileReader FileWirter String Integer java.util.Date,System,Class,List,HashMap 常用的包:java.lang;java.io;java.util;java.sql;javax.servlet;org.apache.strtuts.action;org.hibernate 常用的接口:Remote List Map Document NodeList ,Servlet,HttpServletRequest,HttpServletResponse,Transaction(Hibernate)、 Session(Hibernate),HttpSession 14.静态变量和实例变量的区别? 静态变量:通过类名来访问,类加载的时候实例化 实例变量:通过对象来访问,对象new的时候实例化 15. String and StringBuffer的区别? String:String对象一旦产生后就不可以被修改 StringBuffer:StringBuffer对象的内容可以修改 16.集合的作用是什么? 集合是用来存储对象的,这些对象可以是同一类型的,也可以是不同类型的。 17. List, Set, Map是否继承自Collection接口? List、Set是继承Collection Map不是 18. String是最基本的数据类型吗? 不是 19. char型变量中能不能存贮一个中文汉字?为什么? 能 一个char 20.启动一个线程是用run()还是start()? start()来启动 三、中级 21. sleep() 和 wait() 有什么区别? sleep() 方法是线程类(Thread)的静态方法,让调用线程进入睡眠状态,让出执行机会给其他线程. 等到休眠时间结束后,线程进入就绪状态和其他线程一起竞争cpu的执行时间。 wait() wait()是Object类的方法,当一个线程执行到wait方法时,它就进入到一个和该对象相关的等待池,同时释放对象的机锁. 使得其他线程能够访问,可以通过notify,notifyAll方法来唤醒等待的线程 22. JDBC如何做事务处理? 首先,设置事务的提交方式为非自动提交: conn.setAutoCommit(false); 接下来,.将需要添加事务的代码放入try,catch块中。 然后,.在try块内添加事务的提交操作,表示操作无异常,提交事务。 conn.commit(); 尤其不要忘记,.在catch块内添加回滚事务,表示操作出现异常,撤销事务: conn.rollback(); 最后,设置事务提交方式为自动提交: conn.setAutoCommit(true); 23. Java中访问数据库的步骤? 导入连接数据库的Jar包:注册驱动 创建连接数据库对象Connection 创建Statement对象 执行SQL语句 返回结果集 对结果集用对象封装 关闭数据库连接 24. Class.forName的作用?为什么要用? 通过类名来创建一个类的实例对象,在jdbc通常用来注册驱动。 25. String and StringBuffer的区别? 26. forward和redirect的区别? forward请求转发,属于同一请求 redirect重定向,url会发生改变,不同的请求 27.如何实现一个自定义的Servlet? 写一个Servlet类extends HttpServlet并重写doPost或doGet或service方法 28. Servlet的生命周期是什么? 1)构造方法:创建servlet对象,默认情况下,第一次访问servlet的时候创建servlet对象,只调用一次。servlet对象是单实例的。 2)init方法:创建完servlet对象后调用,只调用一次。 3)service方法:每次发出请求时调用一次。 4)destroy方法:销毁servlet对象时候调用。停止tomcat服务器时调用。 29. JSP就是一个Servlet是否正确? 是的 30.JSP有哪些内置对象? request、response page、pageContext Application Session exception out config 四、高级 31. include的两种实现方式的区别? <% include %> 静态包含,在编译之前包含进来 <jsp:include></jsp:include> 动态包含 32. JSP页面中两种跳转方式分别是什么?有什么区别? 请求转发:一次请求转发中 重定向:不同请求的跳转 33.在JSP中如何读取客户端的请求,如何确定某个JSP文件的真实路径? request.getParameter application.getRealPath 34.描述Cookie和Session的作用,区别和各自的应用范围,Session工作原理。 cookie保存客户端,客户的信息,用户名密码 session保存服务器,会话,保存状态,如购物车 其实session是一个存在服务器上的类似于一个散列表格的文件。里面存有我们需要的信息,在我们需要用的时候可以从里面取出来。类似于一个大号的map吧, 里面的键存储的是用户的sessionid,用户向服务器发送请求的时候会带上这个sessionid。这时就可以从中取出对应的值了。 35.什么情况下调用doGet()和doPost()? doGet()直接打开servlet或表单方式是get doPost()表单方式post 36. Hibernate的核心配置文件是什么及其作用? hibernate.cfg.xml主要由以下四部分组成 (1)数据库连接信息,包括驱动程序类名、连接URL、用户名和密码。 (2)Hibernate相关特性,包括dialect(方言)、show_sql(输出SQL语句到控制台)、format_sql(格式化SQL语句) (3)连接池相关信息。 (4)实体类映射文件,实体类与数据库表之间的逻辑映射 37. Hibernate中有哪几种关联关系? 单向N-1 单向1-1 单向1-N 单向N-N 双向1-N 双向N-N 双向1-1 38. Hibernate对象的三大状态? 自由状态:new出来,并没有load加载进去 持久状态:已经保存到数据库中,并且当前还引用着 托管状态:关闭了,已经保存到数据库中了 39. Struts 2处理请求的全过程是什么? 客户端初始化一个指向servlet容器的请求。 请求经过一系列的过滤器(ActionContextCleanUp、SiteMesh) FilterDispatcher被调用,并询问ActionMapper来决定这个请求是否需要调用某个Action ActionMapper决定要调用那一个Action,FilterDispatcher把请求交给ActionProxy。 ActionProxy通过Configurate Manager询问Struts配置文件,找到要调用的Action类 ActionProxy创建一个ActionInvocation实例 ActionInvocation实例使用命令模式来调用,回调Action的exeute方法 一旦Action执行完毕,ActionInvocation负责根据Struts.xml的配置返回结果。 40.什么是AOP和IOC,它们的作用是什么? AOP:面向切面编程,代理模式;在一个事务里面可以无缝的插入到另外一条处理中 IOC:依赖注入,不用实例化去创建一个对象,根据配置文件,将对象注入进去转载地址:http://ewzdf.baihongyu.com/