1、谈谈final、finally、finalize的区别?
final 是修饰符关键字,如果一个类被它修饰,意味着它不能再派生出新的子类,不能作为父类被继承,因此它不能和 abstract一起使用。如果修饰变量或方法,可以保证它不再改变。
finally 异常处理时,finally语句块,执行任何清除操作。如果抛出异常,相匹配的catch就要执行,然后再执行finally
finalize 方法名,java中允许实用finalize()在垃圾回收器将对象从内存在清除前做的必要清除工作。
2、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
匿名内部类是没有名字的内部类,不能extends其他类,但可以作为接口,让另一个类实现。
3、&和&&的区别
&是位运算符,&&布尔运算符
4、HasHMap和HasHTable的区别
都属于map的接口类,实现将唯一键映射到特定个值。HasHMap没有分类或排序,允许nul键和多个null值。而后者不允许。
5、Collection 和 Collections的区别。
Collections是个java.util下的类,包含有各种有关它集合操作的静态方法。 Collection是个java.util下的接口,它是各种集合结构的父接口。
6、GC是什么? 为什么要有GC? (基础)。
GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一:
System.gc() Runtime.getRuntime().gc()
7、String s = new String("xyz");创建了几个String Object?
两个对象,一个是“xyx”,一个是指向“xyx”的引用对象s。
8、Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;
9、short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
short s1 = 1; s1 = s1 + 1;有错,s1是short型,s1+1是int型,不能显式转化为short型。可修改为s1 = (short)(s1 + 1) 。short s1 = 1; s1 += 1正确。
10、sleep() 和 wait() 有什么区别? 搞线程的最爱
sleep()方法是使线程停止一段时间的方法。在sleep 时间间隔期满后,线程不一定立即恢复执行。这是因为在那个时刻,其它线程可能正在运行而且没有被调度为放弃执行,除非(a)“醒来”的线程具有更高的优先级。 (b)正在运行的线程因为其它原因而阻塞。
wait()是线程交互时,如果线程对一个同步对象x 发出一个wait()调用,该线程会暂停执行,被调对象进入等待状态,直到被唤醒或等待时间到。
11、 Java有没有goto?
Goto—java中的保留字,现在没有在java中使用。
12、数组有没有length()这个方法? String有没有length()这个方法?
数组没有length()这个方法,有length的属性。 String有有length()这个方法。
13、Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?
方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。
14、Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
Set里的元素是不能重复的,那么用iterator()方法来区分重复与否。equals()是判读两个Set是否相等。 equals() 和==方法决定引用值是否指向同一对象equals()在类中被覆盖,为的是当两个分离的对象的内容和类型相配的话,返回真值。
15、error和exception有什么区别?
error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情
况。exception 表示一种设计或实现问题
16、List, Set, Map是否继承自 Collection接口?
List,Set是
Map不是
17、abstract class和interface有什么区别?
声明方法的存在而不去实现它的类被叫做抽象类(abstract class),不能创建abstract 类的实例。接口(interface)是抽象类的变体在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。
18、abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?
都不能
19、接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
接口可以继承接口。抽象类可以实现(implements)接口,抽象类是否可继承实体类,但前提是实体类必须有明确的构造函数。
20、启动一个线程是用run()还是start()?
启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM调度并执行。这并不意味着线程就会立即运行。run()方法可以产生必须退出的标志来停止一个线程。
21、构造器Constructor是否可被override?
构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading
22、 是否可以继承String类?
String类是final类故不可以继承。
23、当一个线程进入一方法后,其它线个对象的一个synchronized程是否可进入此对象的其它方法?
不能,一个对象的一个synchronized方法只能由一个线程访问。
24、try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?
执行,在return前执行。
25、两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
不对,有相同的hash code。
26、当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
是值传递。Java 编程语言只由值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数的值就是对该对象的引用。对象的内容可以在被调用的方法中改变,但对象的引用是永远不会改变的。
27、swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
switch(expr1)中,expr1是一个整数表达式。因此传递给 switch 和 case 语句的参数应该是 int、 short、 char 或者 byte。long,string 都不能作用于swtich。
分享到:
相关推荐
### Java经典面试题知识点 #### Java数据结构容器 - **核心知识点**:Java集合框架,包括List、Set、Map等接口及其实现类。List接口代表有序的集合,例如ArrayList和LinkedList;Set接口代表不允许重复元素的集合,...
Java经典面试题和答案Java经典面试题和答案Java经典面试题和答案Java经典面试题和答案Java经典面试题和答案Java经典面试题和答案Java经典面试题和答案Java经典面试题和答案Java经典面试题和答案Java经典面试题和答案...
java工程师社招经典面试题java工程师社招经典面试题java工程师社招经典面试题java工程师社招经典面试题java工程师社招经典面试题java工程师社招经典面试题java工程师社招经典面试题java工程师社招经典面试题java...
资源名称:Java经典面试题大全资源目录:【】!good2011-4-27-tarena【】Java面试题【】java面试题及答案(基础题122道,代码题19道)【】java面试题大全-葵花宝典-培训班总结出现率比较高的面试题【】华为Java面试题...
java经典面试题java经典面试题
本文总结了《高级Java经典面试题2019》中关于并发编程、JVM和Spring框架等方面的重要知识点。通过深入理解这些概念和技术,可以帮助开发者更好地掌握Java核心技术,提高面试竞争力。希望本文能为读者提供有益的帮助...
这份10万字的PDF文档包含了208道Java经典面试题,旨在帮助开发者们系统地复习和提升自己的技能,以应对包括阿里、腾讯、字节跳动、京东等知名互联网公司的面试。以下是部分题目及其涉及的知识点: 1. **JDK和JRE的...
一个标准的Java程序至少有一个线程,即主方法所在的线程(main thread)。线程是轻量级进程,它可以与同一进程中的其他线程共享资源,如内存、文件句柄等。 #### 2.2 创建线程的方式 - **继承Thread类**:创建一个...
以下是对"Java经典面试题.pdf"中可能包含的一些关键知识点的详细解释: 1. **基础语法**:面试中可能会考察Java的基础概念,如数据类型(基本类型与引用类型)、变量、运算符、流程控制语句(if-else、switch、for...
Java经典面试题及答案; Java经典面试题及答案; Java经典面试题及答案; Java经典面试题及答案; Java经典面试题及答案
120个Java经典面试题和答案(上).pdf 120个Java经典面试题和答案(下).pdf Java程序员面试笔试宝典.pdf Java程序员面试笔试真题与解析 .pdf Java基础方面.pdf 应聘Java笔试时可能出现问题及其答案.pdf 线程编程...
### Java经典面试题汇总 #### 一、面向对象与面向过程的区别 **面向对象**与**面向过程**是编程中两种不同的思想模式。 1. **面向过程**: - **特点**:关注解决问题的具体步骤和流程。 - **示例**:如洗衣服的...
2、120个Java经典面试题和答案(上).pdf。3、120个Java经典面试题和答案(下).pdf。4、EJB方面.pdf。5、java web面试题.pdf。6、Java基础方面.pdf。7、java集合面试题.pdf。8、Java框架部分面试题.pdf。9、java面...
在Java中,类的继承是单继承的,即一个类只能有一个直接父类,但可以通过多层继承实现多重继承的效果。 - **继承的语法**:`class Derived extends Base { ... }` - **访问修饰符**:子类可以访问父类中public和...
经典java基础面试题及答案大汇总.rar 经典java基础面试题及答案大汇总.rar 经典java基础面试题及答案大汇总.rar 经典java基础面试题及答案大汇总.rar 经典java基础面试题及答案大汇总.rar 经典java基础面试题及答案...
### Java经典面试题知识点解析 #### 一、单项选择题知识点解析 1. **Java的起源** - **知识点**:Java的历史和发展。 - **解释**:Java是由Sun Microsystems公司的James Gosling等人于1995年创建的。它是在C++的...
java面试题100道,非常经典,希望对大家面试有所帮助。
这份"2020 Java经典面试题总汇"很可能包含了各种难度层次的问题,旨在测试候选人在核心概念、数据结构、算法、多线程、集合框架、JVM、网络编程以及设计模式等多个方面的掌握程度。 1. **核心概念** - Java的基础...
Java经典面试试题