java总结面试题

原创 2013年12月06日 16:57:49

1.抽象类与接口的区别?

先答属性:抽象类可以有普通成员变量,接口不行;然后答方法:抽象类有非抽象的方法和构造方法,并且修饰符可以是私有的,接口只能是抽象的方法,并且修饰符是public,最后说一句只能继承一个抽象类,但能实现多个接口。

2.String StringBuffer  StringBuilder区别?

String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全)

3.length 数组是length属性,String是length方法

4.静态include与动态include的区别?

动态INCLUDE用jsp:include动作实现 <jsp:include page="included.jsp" flush="true" />它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数 会先解析所要包含的页面(你例子中的included.jsp),解析后在和主页面放到一起显示<%@ include file="included.htm" %> 静态INCLUDE用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面 不会解析所要包含的页面(你例子中的included.htm),也就是说,不管你的included.htm中有什么,我的任务就是把你包含并显示,其他的一概不管jsp:include是先编译一下included.jsp文件,然后再包含        先编译,后包含@ include是先把文件包含就来,然后统一编译                   先包含,后编译

5.j2ee常用的服务器?

tomcat jboss weblogic

6.collection 与 collections区别?

Collection是集合类的上级接口,继承与他的接口主要有Set 和List.
Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。


7.
char c = '我';
char b = 'b';
System.out.println(c);
以上程序中c能正常输出。查资料说java中char使用UTF-16编码, char占两字节,所以可以放汉字。
我的疑惑是:一个英文字符占一个字节,而char的容量是两个字节。那为什么
char b = 'ab';就不行呢?谢谢

这个是java语法。语法中规定char类型只能存放以 ' '为标志的单字符。像'ab'这个是双字符。当然不行java虚拟机在编译的时候就会报错。因为违反了java语法..至于你说char可以存储两个字节的大小。一点没错。但是不是这么个两个字节。如果你感觉char是两个字节的存储空间。存储一个英文字母有点浪费。你可以用一个byte型来存储。byte的存储容量是1个字节...正好能存。一个键盘上的任何一个字符。但是存不了汉字。因为一个汉字两个字节。

8.

orcle 查询 当前时间 select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as nowTime from dual   to_char 是时间类型转字符串类型, to_date()字符串型时间转日期型

SELECT TO_DATE('2006-05-01 19:25:34', 'YYYY-MM-DD HH24:MI:SS') FROM DUAL

9.


输出的结果是 0 跟 java.lang.ArrayIndexOutOfBoundsException异常!首先 args跟a没有关系,因为args.length等于0,所以下标越界


String是不可变的类型,即创建一个String对象后,就不能修改这个String,平常使用的"aa"+"bb"生成"aabb"这个过程中,实际是创建了三个String对象:"aa", "bb", "aabb"

StringBuffer是相对于String的一个可变的类型,StringBuffer可以在原对象上进行加长或缩短等修改操作。适用于需要大量连接字串或拼接处理字串的情况,相应的情况下就不宜使用String对象了。
10.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
short s1 = 1; s1 = s1 + 1; (s1+1运算结果是int型,需要强制转换类型)
short s1 = 1; s1 += 1;(可以正确编译)

6.
class Something {
int i;
public void doSomething() {
System.out.println("i = " + i);
}
}
有什么错呢? 看不出来啊。
答案: 正确。输出的是"i = 0"。int i属於instant variable (实例变量,或叫成员变量)。instant variable有default value。int的default value是0。
7.
class Something {
final int i;
public void doSomething() {
System.out.println("i = " + i);
}
}
和上面一题只有一个地方不同,就是多了一个final。这难道就错了吗?
答案: 错。final int i是个final的instant variable (实例变量,或叫成员变量)。final的instant variable没有default value,必须在constructor (构造器)结束之前被赋予一个明确的值。可以修改为"final int i = 0;"。
8.
public class Something {
public static void main(String[] args) {
Something s = new Something();
System.out.println("s.doSomething() returns " + doSomething());
}
public String doSomething() {
return "Do something ...";
}
}
看上去很完美。
答案: 错。看上去在main里call doSomething没有什么问题,毕竟两个methods都在同一个class里。但仔细看,main是static的。static method不能直接call non-static methods。可改成"System.out.println("s.doSomething() returns " + s.doSomething());"。同理,static method不能访问non-static instant variable。
在非静态方法里可以直接调用 非静态方法与静态方法,但是在静态方法中只能直接调用静态方法!

一个接口不能实现接口,但是可以继承多个接口。一个类只能继承一个父类,但是能实现多个接口。

相关文章推荐

Java_面试题总结(2011版)

  • 2013年04月21日 10:33
  • 388KB
  • 下载

JAVA面试题总结

  • 2008年06月09日 23:38
  • 22KB
  • 下载

互联网公司校招Java面试题总结及答案——CVTE

有的没有答案,或者重复的被我去掉了,其他的请参考我的系列文章: 互联网公司校招Java面试题总结及答案——美团 ( 百度Java面经)互联网公司校招Java面试题总结及答案——百度(目前只是部分总...

java面试题总结 下载

  • 2017年05月16日 16:51
  • 34.55MB
  • 下载

Java面试题基本知识点总结(2)

  • 2016年05月13日 16:52
  • 121KB
  • 下载

java 自动装箱(面试题)基本知识总结即简例

自动装箱 类型包装器:在一个对象内部封装一个基本类型的类。 类型包装器产生原因:首先 使用基本数据类型而不是对象来处理是出于性能方面的考虑。但是 基本数据类型不属于对象体系的一部分,也不能继承ob...

java高级ssh三大框架面试题总结

  • 2010年12月21日 11:36
  • 169KB
  • 下载

互联网公司校招Java面试题总结及答案——网易

因为时间有限,所以这部分很多都没有整理答案,后序有时间再补上。 其他请参看我的系列文章: 互联网公司校招Java面试题总结及答案——阿里、腾讯 互联网公司校招Java面试题总结及答案——微店...

Java面试题大全(个人总结)

  • 2010年10月21日 16:06
  • 59KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java总结面试题
举报原因:
原因补充:

(最多只允许输入30个字)