学IT技术是很热门的,但是对于找工作来说,最能看出你的能力的就是面试题了,对于java程序员来说,这里总结了java面试题,让你轻松过面试。
1. Java编译的指令是什么
编译是:javac java文件名;
2. 子类继承父类的时候,关于子类当中的初始化顺序的一个问题,(一个类,其中包含好几个类,问你他的输出是什么?)
先初始化父类的构造方法,再初始化子类的构造方法
3. 对于手机开发的java平台是什么
J2me
4. String比Stringbuffer存的容量大?
一样
4. JAVA连接数据库的时候是通过什么连接的
Connection
5. MVC模式中ActionForm属于哪个层
V层
7. JAVA中传参数的时候,可以改变原来变量的值的方法是哪项
1传基本数据类型2,传对象3.上述的全对4.上述的全错
8. JAVA当中会有内存泄露么,如果有是因为什么原因,这个时候垃圾回收器在做什么?
在Java中,内存泄漏就是存在一些被分配的对象,这些对象有下面两个特点,首先,这些对象是可达的,即在有向图中,存在通路可以与其相连;其次,这些对象是无用的,即程序以后不会再使用这些对象。如果对象满足这两个条件,这些对象就可以判定为Java中的内存泄漏,这些对象不会被GC所回收,然而它却占用内存。有些对象被分配了内存空间,然后却不可达,在Java中,这些不可达的对象都由GC负责回收,因此程序员不需要考虑这部分的内存泄露。
9. java里面Override的返回值是否必须和父类相同?
在JDK5.0以前,Override要求参数列表和返回值必须完全相同,否则编译不通过,而在JDK1.5以后,系统允许返回值和父类不同了,但必须是其子类才可以。
10.String a = “abcd, efg”;
String b = “) (*&^%¥#@![] {} , . // ; : ‘ ? <> ”;
要求是判断String a 里有没有哪个字符在String b 里出现,效率越高越好
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
String a = "abcd,efg";
String b = ")(*&^%$#@![]{},.///;:'? <>";
byte[] bb = new byte[256];
char[] cs = b.toCharArray();
for (char c : cs) {
bb[c] = 1;
}
cs = a.toCharArray();
for (char c : cs) {
if (bb[c] == 1) {
System.out.println(c);
}
}
}
}
11. java如何每5秒生成一个随机数
import java.util.Random;
import java.util.Timer;
import java.util.TimerTask;
/**
* Java如何每5秒生成一个随机数
*/
public class Test {
public static void main(String[] args) {
final Random random = new Random();
Timer executeSchedule = new Timer();
executeSchedule.schedule(new TimerTask() {
@Override
public void run() {
System.out.println(random.nextInt());
}
}, 0, 5000);
}
}
12. java得到一个整数的绝对值,不使用任何判断和比较语句,包括API。
1、 不得使用任何API,如Math.abs()等
2、 不得使用判断语句,如if、for、while、swith、? :等
3、 不得使用比较语句,如:==、<=、>=、!=、等
13. java里如何得到00:00:00格式的时分秒的Timestamp
14. 任举一种数据库的自动分页方法
15. 英文翻译题(关于安卓的一段英文,翻译成汉语) By providing an open development platform, Android offers developers the ability to build extremely rich and innovative applications.
Developers are free to take advantage of the device hardware,access location information,run background services, set alarms.
Add notifications to the status bar, and much, much more.
Developers have full access to the same fra,ework APIs used by the core applications.The applications architecture is designed to simplify the reuse of components;
any applications can publish its capabilities and any other applications may then make use of those capabilities(subject to security constraints enforced by the framework).
This same mechanism allows components to be replaced by the user.
16. 简述this,final,static
17.Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?
18.abstract class和interface有什么区别?
19.接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
20.当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?
21.多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?
22.编程题:操作台上输入一组数,排序输出
23.run()和start()区别
24.a=5,b=9不实用第三个变量,交换a,b的值
25.Activity生命周期
26.做视频播放器播放视频用到什么组件?
27.Mediaplayer+Surfaceview和Vedioview+Mediacontroler做视频播放时有什么区别,两种特点是什么,个人认为哪种好一些?
28.Vedioview的父类?
29.当有电话或短信进来时应该如何处理?
30. 介绍下Android中常用的五种布局?