1. 带答案的java面试题 欢迎参考
1.下面哪种基本类型是无符号的?
1. int
2. long
3. char
4. double
5. float
答案:c. char (所有的数字类型都是带符号的,char是唯一的无符号的整形)
2. Java同时支持多维数组和嵌套数组对吗?
答案:不对,Java只支持嵌套数组,不支持多维数组
3. public main(int number) { }是一个合法的方法吗?周至柔
答案: 正确的
4. public static final main(String[] args) {}是一个合法的方法吗?
是的
5. 一个没有方法的类可以在JVM三年级下册口算题100题执行吗?如果它的祖先类有main方法?
是的
6. GC是一个高优先级线程吗?
不对,GC是一个低优先级线程
7. 循环引用可以避免一个对象被垃圾回收吗?
不会
8. 如果在finalize方法里面发生了exception, 这个对象会被垃圾回收吗?
finalize方法里面的Exception不能避免垃圾回收
2. 如下代码中finally中的代码会不会执行?
try {
if (choice) {
while (true)
} el {
system .exit(1):
}
}finally {
codetocleanup();
}
答案: 会的,会在it(1)之前执行
3. Java里面StringBuilder和StringBuffer有什么区别?
StringBuilder类是JDK 5.0引入的新的类, 实质上,StringBuffer是一个线程安全的StringBuilder, 如果只在同一个线程内对字符串进行操作, StringBuilder会更快一些, 如果是使用多线程进行操作,需要使用StringBuffer.
StringBuilder是非线程安全的,StringBuffer是线程安全的。
4. WebSphere 应用服务器都支持哪些认证?
WebSphere 应用服务器支持的认证方案包括基本认证、摘要认证、定制认证、证书认证。
基本认证:使用 HTTP 或 HTTPS 请求来自客户机的用户名和口令。 用普通文本将用于验证的信息发送给服务器验证。所有浏览器都支持基本认证。如果一个用户标识符和口令提供了足够的认证,那么请考虑使用基本认证。
摘要认证:使用 HTTP 或 HTTPS 请求来自客户机的用户名和口令。将用于验证的用户名和口令的加密形式(使用摘要)发送给服务器。并非所有浏览器都支持摘要认证。(当前仅 Sun HotJava 浏览器支持该认证方案)。如果浏览器不支持摘要认证,那么其用户将无法访问由该协议进行保护的资源。
定制认证:使用 HTTP 或 HTTPS 来请求使用 HTML 格式定制的客户机信息。由 CGI 和Servlet 将这些用于验证的信息用普通文本发送到服务器上。当需要除了标识符和口令之外的用户认证时,可使用定制认证。例如,可以请求一个社会安全号的用户认证。使用该协议,可建立 HTML 格式以询问用户数据。认证是由服务器端代码( CGI 和 Servlet )执行的,而不是由 IBM WebSphere 应用服务器运行时应用程序执行的。如果使用定制认证,请使用 HTTPS 目不暇接保护数据。
证书认证:使用 HTTPS 以请求一个客户机证书。必须启用 SSL 客户机认证选项。将用于
验证的信息发送给服务器。认证使用的数字证书具有很高的安全性,且证书认证通常对用户是透明的。系统或站点管理员会对客户机证书进行管理。通常这些任务是由证书权威服务器软件授权的,例如 IBM Vault Registry 产品。
(3) 组合认证方案和协议
正如前述,除非是在一个与安全无关的环境中,否则 HTTPS 通常更为可取。对于不同的安全性要求可以对方案和协议进行组合,策略如下:
• 对于基本安全性要求,使用基本、摘要或 HTTP 上的定制认证。
• 对于较高安全性要求,使用基本、摘要或 HTTPS 好的眼霜上的定制认证。
工作实习总结• 对于最高安全性要求,使用 HTTPS 上的证书认证。窗体顶端窗体底端
5. Java提供了哪些企业应用编程接口?
1) JDBC(Java Databa Connectivity)提供连接各种关系数据库的统一接口。
2) EJB(Enterpri JavaBeans)使得开发者方便地创建、部署和管理跨平台的基于组件的企业应用。
3) Java RMI(Java Remote Method Invocation)用来开发分布式Java应用程序。一个Java
对象的方法能被远程Java虚拟机调用。这样,远程方法激活可以发生在对等的两端,也可以发生在客户端和服务器之间,只要双方的应用程序都是用Java写的。
4) Java IDL(Java Interface Definition Language) 提供与CORBA(Common Object Request Broker Architecture)的无逢的互操作性。这使得Java能集成异构的商务信息资源。
5) JNDI(Java Naming and Directory Interface)提供从Java平台到的统一的无逢的连接。这个接口屏蔽了企业网络所使用的各种命名和目录服务。
6) JMAPI(Java Management API)为异构网络上系统、网络和服务管理的开发提供一整套丰富的对象和方法。
7) JMS(Java Message Service)提供企业消息服务,如可靠的消息队列、发布和订阅通信、以及有关推拉(Push/Pull)技术的各个方面。
8) JTS(Java transaction Service)提供存取事务处理资源的开放标准,这些事务处理资源包括事务处理应用程序、事务处理管理及监控。
6. 什么是java序列化,如何实现java序列化
序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。
序列化的实现:将需要被序列化的类实现Serializable接口,该接口没有需要实现的方法,implements Serializable只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。
7. char型变量中能不能存贮一个中文汉字?为什么?
CHAR类型变量时能够定义成为一个中文的,因为java中以unicode编码,一个char占16个字节,所以放一个中文是没问题的。
8. 值传递还是引用传递?
当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化
后的结果,那么这里到底是值传递还是引用传递?
是值传递。Java 编程语言只有值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数的值就是对该对象的引用。对象的内容可以在被调用的方法中改变,但对象的引用是永远不会改变的。
9. Java如何读取CLOB字段?
CLOB字段是Oracle用来存储大容量内容的字段类型,CLOB字段可以存储最高4G的容量。
Java读取CLOB和读取普通类型字段有一点不一样,以下代码实现了如何读取CLOB字段:
connection.tAutoCommit(fal);
电脑评分PreparedStatement preparedStatement=connection.prepareStatement(sql);
ResultSet uteQuery();
Clob Clob(colName);
if(clob!=null)
{
Reader reader=((oracle.sql.CLOB)clob).getCharacterStream();
BufferedReader br=new BufferedReader(reader);
String value=”";
九阳豆浆机使用说明 String line=”";
while((adLine())!=null)
{
value+=line+”\\r\\n“;
}
}
rs.clo();
preparedStatement.clo();
其中value就是java读取的CLOB字段的值。
10. Java如何获得ResultSet的总行数?
取得ResultSet行数的方法主要有以下几种:
1. 用ResultSet的getRow方法来取得总行数
2. 利用循环ResultSet元素的方法取得总行数
ResultSet rt = uteQuery(”lect * from table”);
int rowCount = 0;
()) {
rowCount++;
}
3. 利用SQL语句来取得ResultSet的总行数
ResultSet rt = uteQuery(”lect count(*) totalCount from yourTableName”);
int rowCount = 0;
()) {
rowCount=rt .getInt(”totalCount “);
}
rowCount就是ResultSet的总行数。
哪家公司出了这个面试题 千万不要去!
DTD的全程式Document Type Definition 文档类型定义 它是一套关于XML标记符的语法规则,是XML1.0版规格的一部分,也是用来验证XML文件格式的验证机制,是XML的一个组成部分。
DTD文档的组成部分有:元素的定义规则,元素间关系的定义规则,元素可使用的属性,可使用的实体或者符号规则。
11. 请介绍一下Ant?
Ant是一个基于Java的构建工具,与make类似,但是对于Java应用开发的跨平台问题有较好的支持,ant是java项目和其他很多开源java项目构建工具的较好选择,Ant可以用来编译你的Java源文件,构建部署用的jar文件和war文件,单元测试代码以及创建javadoc文档。
Ant的一些优点和特性:
1. Ant是基于Java, 使用Java 也应用与Java
2. 支持java工具(javac, javadoc 等等)
3. XML构建文件比MAKE文件更加以用,易读和以维护
4. Ant对扩展有较好的支持
5. 支持跨平台的Java开发
6. Ant比MAKE更加快,每一个命令都会起一个新的进程
7. Ant是在JVM里面进行运行的
田叔8. 每一个命令都是在JVM里面进行
9. 像javac这些工具都是以线程运行而不是进程
10. 用ant编译大量的java源文件的会大大加快编译的速度
11. Ant的debug模式非常有用