栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java常见的面试题(1)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java常见的面试题(1)

equals和==的区别

epuals是String类的一个方法,比较的是字符串内容是否相等,==如果是基本类型 int double等等比较的是两个数的值,如果是引用类型比较的是两个的地址。

JDK JRE JVM的区别

总体来说是JDK包括了JRE包括了JVM,JDK是java的开发环境,JRE是java运行时的环境,JVM

是java的虚拟机。

final

final如果修饰变量的话是,表示变量的值没有办法改变,如果修饰类的话,类是没有办法继承的。如果修饰方法的话表示方法是无法被子类覆盖的。也就是可以重载但是不能重写覆盖。

String StringBuffer StringBuilder 三者的区别

首先三者都是字符串,String是不可变的大家知道,在new 出一个String会占用一定的空间,每次想要改变都需要创建新的对象,StringBuffer和StringBuilder是可以在原来的对象上改变的,但是StringBuffer是线程安全的,StringBuilder是线程不安全的,比如说在大量的访问中StringBuilder可能会导致数据出错,但是性能方面就会有所损失性能 StringBuider>StringBuffer>String 所以在现实开发中推荐先使用StringBuider,如果并发量大使用StringBuffer

重载和重写的区别

重载:在一个类中,参数类型,参数个数,顺序不同,方法名相同

重写:发生在子父类中,或者实现接口,实现抽象方法,方法名,参数列表必须相同,子类的返回值类型必须范围小于等于父类。

接口和抽象类的区别

接口是可以实现多个的,抽象类是单继承的,有抽象方法的不一定是抽象类,接口中的成员变量只能是用public static final 修饰的,而抽象类中可以是很多类型,接口中只能存在抽象方法,而抽象类中可以存在很多方法。

List和set

首先List是有序的,而且是可以允许重复元素出现的,set是无序的,不允许重复元素的出现,都继承自Collection,其次遍历的话set只能用构造器Iterator遍历,而List可以中增强for循环和构造器Iterator遍历。

 ArrayList和linkedList

两者的都是继承了List接口,ArrayList的底层是动态数组,linkedList的底层是链表,所以相对于linkedList是容易实现增删的,而ArrayList是容易查询的,存储方面ArrayList是一片连续的空间不间断的地址,而linkedList可以是分散在各个位置的地址,所以遍历的话ArrayList是是可以用增强for和构造器Iterator遍历,而linkedList推荐使用构造器Iterator,尽量不要使用增强for,常用的是ArrayList

构造方法

构造方法是一种特殊的方法,具有以下特点。
(1)构造方法的方法名必须与类名相同。
(2)构造方法没有返回类型,也不能定义为void,在方法名前面不声明方法类型。
(3)构造方法的主要作用是完成对象的初始化工作,它能够把定义对象时的参数传给对象的域。
(4)一个类可以定义多个构造方法,如果在定义类时没有定义构造方法,则编译系统会自动插入一个无参数的默认构造器,这个构造器不执行任何代码。
(5)构造方法可以重载,以参数的个数,类型,顺序。
 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/591151.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号