Java基础问题 一、Java基础知识
1.Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。 字符型,数值型,布尔型 答案:int, char, double, float, boolean 等。String不是。String这种封装类需要创建实例。比基本类型占用内存多一些。慢一些。2.字符串的操作:写一个方法,实现字符串的反转,如:输入abc,输出cba 写一个方法,实现字符串的替换,如:输入bbbwlirbbb,输出bbbhhtccc。
String str;
StringBuffer sb;
for (int i=str.length()-1; i>=0; i--)
{
sb.append(str.charAt(i));
}
sb.toString();
str.replace("bbbwlirbbb", "bbbhhtccc");3.数据类型之间的转换如何将数值型字符转换为数字(Integer,Double)如何将数字转换为字符如何取小数点前两位,并四舍五入。 float t = 1234.567f; t = Math.round(t * 100); String s = String.valueOf(t); s = s.substring(0, s.indexOf(".")); StringBuffer sb = new StringBuffer(s.substring(0, s.length() - 2)) .append(".").append(s.substring(s.length() - 2)); System.out.println(sb.toString());
4.日期和时间如何取得年月日,小时分秒。如何取得从1970年到现在的毫秒数。如何获取某个日期是当月的最后一天。如何格式化日期。 Long L=Timestamp.valueOf("2010-6-19 00:00:00").getTime();SimpleDateFormat sdf= new SimpleDateFormat("yyyy-mm-dd");5.数组和集合6.文件和目录(I/O)操作如何列出某个目录下的所有文件如何列出某个目录下的所有子目录判断一个文件或目录是否存在如何读写文件public static ArrayList<File> getFile(ArrayList<File> fileArray , File file) { File[] files = file.listFiles(); for (File childFile : files) { if (childFile.isDirectory()) { getFile(fileArray, childFile); } else fileArray.add(childFile); } return fileArray; }7.Java多态的实现(继承、重载、覆盖) 8.编码转换,怎样实现将GB2312编码的字符串转换为ISO-8859-1编码的字符串。String str = new String (str.getBytes("GB2312"),"ISO-8859-1"); 9.Java中访问数据库的步骤,Statement和PreparedStatement之间的区别。10.找出下列代码可能存在的错误,并说明原因:二、JSP&Servlet技术 1.描述JSP和Servlet的区别、共同点、各自应用的范围 答案:尽管JSP在本质上就是SERVLET,两者的创建方式不一样.Servlet完全是JAVA程序代码构成;JSP由HTML代码和JSP标签构成.在实际应用中采用Servlet来控制业务流程,用JSP来生成动态网页.2.在Web开发中需要处理HTML标记时,应做什么样的处理,要筛选那些字符(< > & “”) 需要转译以上那些字符。3.在JSP中如何读取客户端的请求,如何访问CGI变量,如何确定某个Jsp文件的真实路径。request对象内含客户端的请求信息..
CGI(Common Gateway Interface)4.描述Cookie和Session的作用,区别和各自的应用范围,Session工作原理。 5.列出Jsp中包含外部文件的方式,两者有何区别。第一种:include指令:当JSP转换成Servlet时引入指定文件 <%@ page contentType="text/html; charset=GB2312" language="java" errorPage=""%> <%@ include file="head.jsp"%> 第二种:<jsp:include>动作元素:当JSP页面被请求时引入指定文件 <%@ page contentType="text/html; charset=GB2312" language="java" errorPage=""%> <jsp:include page="head.jsp"/>6.说明Jsp中errorPage的作用,应用范围。在web.xml中配置一个errorpage页面 当发生error的时候可以跳转到errorpage页面。7.介绍在Jsp中如何使用JavaBeans。8.简单介绍JSP的标记库 9.Jsp和Servlet中的请求转发分别如何实现。 三、J2EE相关知识 1.介绍J2EE、J2SE、J2SE的区别。2.J2EE是一种技术还是一种平台,他提供了那些技术。3.什么是Application Server,它有什么功能和优点。 4.简单介绍连接池的优点和原理。 5.Web.xml的作用 四、其他 1.Web安全性的考虑(表单验证、浏览器Basic方式的验证,应用程序的安全性,SSL,代码考虑) 2.简单介绍您所了解的MVC。 3.简单介绍所了解的XML。 4.文档和编码规范
5.Java中的分页、效率考虑。 6.简单介绍您所了解的structs。 18.链表与散列表和数组的区别 19.堆和栈的区别 20.ejb的分类及区别21.你对现在软件业以及国内软件业的看法22.谈谈java多线程23.谈谈文件加密技术 24.软件开发生命周期25.路由协议种类及特点 26.java的awt和swing组件的GUI设计的关键 27.对于java流的认识 28.简单描述一下awt与swing区别。 29.简述java编程中事件处理模式。 30.你编写过applet吗?applet的安全权限如何?试列举java application或者applet中与servlet/jsp通信可以采用的方式。31.简述逻辑操作(如&,|)与条件操作(如&&,||)的区别。32.简述 Java Server Page 和 Servlet 的联系和区别。 33.简述synchronized和java.util.concurrent.locks.Lock的异同 ? 34.EJB规范规定EJB中禁止的操作有哪些? 35.java除了8种基本类型外,在虚拟机里还有哪一种,有什么作用? 36.除了使用new关键字创建对象意外,试列举另外三种以上创建实例的方式? 37.classloader中,JDK的API、Classpath中的同web-inf中的class加载方式有什么区别?38.列举三种以上垃圾回收算法,并比较其优缺点? 39.编写代码实现一个线程池 40.描述一下JVM加载class文件的原理机制? 41.试举例说明一个典型的垃圾回收算法? 42.请用java写二叉树算法,实现添加数据形成二叉树功能,并以先序的方式打印出来. 43.请写一个java程序实现线程连接池功能? 44.给定一个C语言函数,要求实现在java类中进行调用。 45.如何获得数组的长度? 46.访问修饰符“public/private/protected/缺省的修饰符”的使用 47.用关键字final修饰一个类或者方法时,有何意义? 48.掌握类和对象的概念,掌握面向对象编程的本质 49.静态变量和静态方法的意义,如何引用一个类的静态变量或者静态方法? 50.J***A语言如何进行异常处理,关键字:thorws,throw,try,catch,finally 51.Object类(或者其子类)的finalize()方法在什么情况下被调用? 52.一个“.java”原文件中是否可以包括多个类(不是内部类)?53.掌握内部类和接口的概念54.StringTokenizer类的使用 55.数据结构,如何遍历List中的元素?如果要按照键值保存或者访问数据,使用什么数据结构?要掌握Collection相关的接口和类的使用 56.使用StringBuffer类与String类进行字符串连接时有何区别?57.调用Thread类的destroy()方法有什么后果? 58.多线程,用什么关键字修饰同步方法?stop()和suspend()方法为何不推荐使用? 59.使用socket建立客户端与服务器的通信的过程 60.J***A语言国际化应用,Locale类,Unicode 61.描述反射机制的作用 62.如何读写一个文件? 63.在图形界面中,一个按钮如何处理鼠标点击事件? 64.在图形界面中,一个表格,如何实现编辑单元格时弹出下拉框?65.如何加载图片?66.什么是模态对话框? 67.阐述MVC的概念 68.GUI布局管理器的使用,FlowLayout,BorderLayout,GridBagLayout 69.如何构造一棵树?选择树的一个节点时,如何得到这个节点? 70.向编辑框中输入字符时,如何控制只输入整数?71.描述使用JDBC连接数据库的过程 72.EJB分为几类?什么是BMP,CMP?73.什么是JNDI? 74.ADO是什么?ActiveX数据对象,是一个应用级程序接口. 75.四种JDBC方式?目前的版本? 76.EJB有哪几种?区别是什么?77.JavaBean与EJB有什么区别? 78.软件开发生命周期有哪几个阶段? 79.软件开发有哪些因素? 80.软件开发中如何进行版本控制? 81.UML中,类视图如何表示类中的继承与聚合? 82.客户端游标与服务器端游标的区别? 83.动态游标与静态游标的区别? 84.dotnet由哪几个基本框架组成? 85.Oracle中SGA是什么? 86.web servers是什么?87.UNIX中QT是什么意思?88.在软件开发生命周期中的哪个阶段开始测试? 89.dotnet与J2EE的比较? 90.什么是ActiveX? 91.Java中IDL是什么? 92.ISO9000和CMM是什么?IS10000和CMM(软件能力成熟度模型)认证是国际上通用的软件质量评估方法.CMM的五个成熟度等级