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面试题总结

1、 String,StringBuilder和StringBuffer有什么区别? (1)String和(StringBuilder,StringBuffer)的比较。(String不可变,显然线...
  • lululul123
  • lululul123
  • 2017年03月17日 21:40
  • 606

java面试题以及知识点小结

这是我在网上看到的面试题,结合自己的情况归纳一下吧1.String 是最基本的数据类型吗? 答:不是。Java中的基本数据类型只有8个:byte、short、int、long、float、doubl...
  • zrds2e
  • zrds2e
  • 2017年06月26日 14:31
  • 210

各大公司Java后端开发面试题总结

本文属于转载  。。。。。。 ThreadLocal(线程变量副本) Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量。 采用空间换时间,它用于...
  • likailonghaha
  • likailonghaha
  • 2017年04月16日 12:16
  • 485

史上最全java面试题集!这些都会了bat不用愁!

hashmap和hashtable区别 对线程安全的理解 讲讲web三大架构 为什么要用struts做mvc 什么技术是关于解耦的 AOP是怎么实现的...
  • zhou_yujia
  • zhou_yujia
  • 2015年10月04日 20:42
  • 2001

自己总结的一些三大框架面试题

Struts 谈谈你对Struts的理解。 答: 1.struts是一个按MVC模式设计的Web层框架,其实它就是一个大大的servlet,这个Servlet名为ActionServlet,或...
  • qhwc2009
  • qhwc2009
  • 2015年05月29日 11:04
  • 30859

计算机网络常见面试题总结

1. OSI,TCP/IP,五层协议的体系结构 OSI分层(7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。 TCP/IP分层(4层):网络接口层、网际层、运输层、应用层...
  • JXH_123
  • JXH_123
  • 2014年10月20日 20:48
  • 14930

String字符串处理常见的面试题总结

首先,我们要先了解常量池的概念,常量池在java中用于保存在编译期已确定的,存在于已编译的class文件中的一份数据。它包括了关于类,方法,接口等中的常量,也包括字符串常量,如String s = “...
  • nwpu_geeker
  • nwpu_geeker
  • 2017年12月03日 14:06
  • 76

面试总结——Java高级工程师(二)

面试题千变万化,不变的是知识点和技术根本。基础很重要,故不积跬步,无以至千里;不积小流,无以成江海。学好基础,把握好技术的原理,然后去实践,这样才能深入了解一门技术,学不可以已! 另外,面试过程中,保...
  • shijing266
  • shijing266
  • 2016年10月25日 23:52
  • 25715

面试总结 —— 高级JAVA工程师【转转转】

近期考虑换工作的问题,于是投简历面试,面试5家公司的高级Java工程师,有4家给了我offer,想着总结一下面试经验,方便最近正在寻求机会的你们 一、无笔试题 不知道是不是职位原因还是没遇到,面试时...
  • zzjstudent
  • zzjstudent
  • 2016年03月04日 15:21
  • 1693

黑马Java EE面试总结

想要过黑马面试的你,你一定要看 黑马毕向东的视频。面试都是提问视频里面的问题。我将我的总结罗列出来,希望大家可以查漏补缺 面向对象特征: 封装,继承,多态  封装:把属性隐藏,提供公共方法对其访问...
  • pi408637535
  • pi408637535
  • 2015年08月02日 16:01
  • 1723
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java总结面试题
举报原因:
原因补充:

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