JAVA面试题 (一)
2020-12-13 16:07
标签:dict mode amp 异常 汉字 多少 基本 不能被继承 数组实现 ArrayList和Vector: 数据增长:ArrayList在达到阈值的时候会增长原来集合的50%,Vector则会增长100%。 HashMap和Hashtable: 值:只有HashMap可以有空值,key或value。 可以,java中以unicode编码,一个char占16字符,所以放中文是没有问题的。 GC就是垃圾收集器。java不像C定义一个变量需要手动释放内存。主要就是GC实现的,他可以自动检测对象 heap堆,stack栈。 JAVA面试题 (一) 标签:dict mode amp 异常 汉字 多少 基本 不能被继承 数组实现 原文地址:https://www.cnblogs.com/Ruoqian/p/ms102_1.html
java作用域public private protected 不写-friendly的区别?
以使用。
& 和 && 的区别。
collection和collections的区别。
搜索,排序,线程安全化的操作。class model{
List list1 = Collections.synchronizedList(new ArrayList());
List list2 = Collections.synchronizedMap(new Map
String s=new String("asd")创建了多少个对象。
java中有没有goto关键字?
条件转移,构成循环,跳出循环体等功能。但是在结构化程序中,一般不使用goto语句,以免
造成程序流的混乱,使理解和调试程序困难。
5%3、-5%3、5%-3、-5%-3的结果是多少?
Overload和Override的区别
set容器里的元素是不能重复的,那么使用什么方法实现的?
hashcode的比较,如果值一致那么再进行equals方法比较。这样保证key值得唯一性。
error和exception的区别
jdk8的新特性 主要的
lambda表达式也称为闭包。是jdk8中的最大的改变,它允许我们将函数当成参数传递给某个方法,或者把代码
本身当做数据处理:函数式开发。
default和static
方法引用使得开发者可以引用现存的方法,java类的构造方法或者实例对象。一般和lambda表达式配合使用。
使得代码简介,紧凑。
构造器引用 Class::new///Class
自从java5引进注解之后,注解使用的越来越多,尤其是在框架中,但是注解不能在一个地方多次使用,
java8打破了这个限制,可以在一个地方重复使用同一个注解,使用 @Repeatable定义重复的注解
编译器可以推导出某个参数的数据类型,使得代码更加的简洁
现在注解几乎可以使用在任何元素上。局部变量,接口,超类,实现类等
抽象类的接口的区别
1. 抽象类是可以有方法体的,接口中没有,但是java8的新特性中接口可以写static和default关键字
的方法。
2. 抽象类中的成员变量可以随意修饰,接口中只能是public sttaic final类型
3. 接口中不能含有静态代码块,静态方法。抽象类可以有,新特性之后,接口可以写静态方法。
4. 一个类只能单继承,但是可以多实现。
5. 抽象类可以定义成员变量,接口中的变量都是常量。
抽象类是否可以继承实体类?
constructor可以被override么?
String类可以被继承么?
在try-catch-final中,return在try语句里,那么执行顺序?
静态变量和实例变量的区别
静态变量在内存中有且仅有一个拷贝。
内存
ArrayList和Vector的区别,HashMap和Hashtable的区别。
char变量可以存储一个汉字么?为什么?
***GC是什么?为什么要有GC?
是否超过作用域从而达到自动回收的目的。
String和StringBuffer和StringBuilder的区别
buffer,单线程使用builder。
final,finally,finalize的区别
GC确定该对象没有被使用的时候调用的,属于Object类,所以所有类都有该方法。
面向对象的特性
基本数据类型
int和integer的区别
ArrayList和Vector和LinkedList的存储性能和特性
安全的,其次,Vector的性能较差。
heap和stack的区别