java基础面试题2017
Java面试中的基础面试题你有了解吗?2017年的Java面试者应该提前对面试题做好准备,以下是阳光网小编帮你们整理的2017java基础面试题,一起来学习啦。
2017java基础面试题(一)
1、问题:String和StringTokenizer的区别是什么?
答案:StringTokenizer是一个用来分割字符串的工具类。
StringTokenizer st = new StringTokenizer(”Hello World”);
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
输出:
Hello
World
2、问题:transient变量有什么特点?
答案:transient变量不会进行序列化。例如一个实现Serializable接口的类在序列化到ObjectStream的时候,transient类型的变量不会被写入流中,同时,反序列化回来的'时候,对应变量的值为null。
3、问题:哪些容器使用Border布局作为它们的默认布局?
答案:Window, Frame, Dialog。
4、问题:怎么理解什么是同步?
答案:同步用来控制共享资源在多个线程间的访问,以保证同一时间内只有一个线程能访问到这个资源。在非同步保护的多线程程序里面,一个线程正在修改一个共享变量的时候,可能有另一个线程也在使用或者更新它的值。同步避免了脏数据的产生。
对方法进行同步: public synchronized void Method1 () { // Appropriate method-related code. }
在方法内部对代码块进行同步: public myFunction (){
synchronized (this) {
// Synchronized code here. }
}
2017java基础面试题(二)
1、问题:为什么oracle type4驱动被称作瘦驱动?
答案:oracle提供了一个type 4 JDBC驱动,被称为瘦驱动。这个驱动包含了一个oracle自己完全用Java实现的一个TCP/IP的Net8的实现,因此它是平台独立的,可以在运行时由浏览器下载,不依赖任何客户端 的oracle实现。客户端连接字符串用的是TCP/IP的'地址端口,而不是数据库名的tnsname。
2、问题:介绍一下finalize方法
答案: final: 常量声明。 finally: 处理异常。 finalize: 帮助进行垃圾回收。
接口里声明的变量默认是final的。final类无法继承,也就是没有子类。这么做是出于基础类型的安全考虑,比如String和Integer。这样也使得编译器进行一些优化,更容易保证线程的安全性。final方法无法重写。final变量的值不能改变。finalize()方法在一个对象被销毁和回收前会被调用。finally,通常用于异常处理,不管有没有异常被抛出都会执行到。比如,关闭连接通常放到finally块中完成。
3、问题:什么是Java API?
答案:Java API是大量软件组件的集合,它们提供了大量有用的功能,比如GUI组件。
4、 问题:GregorianCalendar类是什么东西?
答案:GregorianCalendar提供了西方传统日历的支持。
5、问题:ResourceBundle类是什么?
答案:ResourceBundle用来存储指定语言环境的资源,应用程序可以根据运行时的语言环境来加载这些资源,从而提供不同语言的展示。
6、问题:为什么Java里没有全局变量?
答案:全局变量是全局可见的,Java不支持全局可见的变量,因为:全局变量破坏了引用透明性原则。全局变量导致了命名空间的冲突。
7、问题:如何将String类型转化成Number类型?
答案:Integer类的valueOf方法可以将String转成Number。下面是代码示例: String numString = “1000″;
int id=Integer.valueOf(numString).intValue();
8、问题:SimpleTimeZone类是什么?
答案:SimpleTimeZone提供公历日期支持。
9、问题:while循环和do循环有什么不同?
答案:while结构在循环的开始判断下一个迭代是否应该继续。do/while结构在循环的结尾来判断是否将继续下一轮迭代。do结构至少会执行一次循环体。
10、问题:Locale类是什么?
答案:Locale类用来根据语言环境来动态调整程序的输出。
2017java基础面试题(三)
1、问题:面向对象编程的原则是什么?
答案:主要有三点,多态,继承和封装。
2、问题:介绍下继承的原则
答案:继承使得一个对象可以获取另一个对象的属性。使用继承可以让已经测试完备的功能得以复用,并且可以一次修改,所有继承的地方都同时生效。
3、问题:什么是隐式的类型转化?
答案:隐式的类型转化就是简单的一个类型赋值给另一个类型,没有显式的告诉编译器发生了转化。并不是所有的'类型都支持隐式的类型转化。
代码示例: int i = 1000;
long j = i; //Implicit casting
4、问题:sizeof是Java的关键字吗?
答案:不是。
5、问题:native方法是什么?
答案:native方法是非Java代码实现的方法。
6、问题:在System.out.println()里面,System, out, println分别是什么?
答案:System是系统提供的预定义的final类,out是一个PrintStream对象,println是out对象里面一个重载的方法。
7、问题:封装,继承和多态是什么?
答案:简单来说,多态是指一个名字多种实现。多态使得一个实体通过一个通用的方式来实现不同的操作。具体的操作是由实际的实现来决定的。
多态在Java里有三种表现方式:方法重载通过继承实现方法重写通过Java接口进行方法重写。
8、问题:显式的类型转化是什么?
答案:显式的类型转化是明确告诉了编译器来进行对象的转化。
代码示例: long i = 700.20;
int j = (int) i; //Explicit casting
9、问题:什么是Java虚拟机?
答案:Java虚拟机是能移植到不同硬件平台上的软件系统。
10、问题:类型向下转换是什么?
答案:向下转换是指由一个通用类型转换成一个具体的类型,在继承结构上向下进行。
【java基础面试题】相关文章:
java基础面试题04-04
java基础面试题及答案04-05
2017java基础面试题04-05
java基础知识面试题04-05
java最新面试题04-05
java面试题汇总04-05
java集合面试题04-04
java高级面试题04-06
java面试题全集04-06