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

java的一些基础面试题

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

java的一些基础面试题

Java基础
  1. Java为什么可以一次编写,到处运行?

参考答案:因为JVM是Java跨平台的关键,在运行程序前,Java源代码(.java)经过编译成为字节码(.class),在运行时,jvm负责将字节码翻译成机器码。不同版本安装不同的JVM,编译生成的是字节码,不是机器码,需要通过JVM翻译成为机器码才可以运行。

  1. 一个Java文件里可以有多个类吗?

参考答案:可以有多个类,但只能有一个被public修饰的类,如果有这个类,必须和Java文件名一致

  1. 四个访问修饰符区别和作用范围:

  2. string,stringbuffer,stringbuilder区别:

    string不可变字符串,操作时开辟新的空间。

    stringbuffer和stringbuilder可变字符串,可以在原来基础上修改。

    stringbuffer是同步安全的,stringbuilder是不同步线程不安全。

  3. List,vector区别,collection和collections区别

  4. List是一个接口,vector是线程安全的类,arrayList是线程不安全的,实现了List接口

  5. collection是一个接口和collections是一个类

  6. 重载和重写(覆盖)区别

    重载是在编译时多态性,重写实在运行时多态性

    重载要求同名方法的参考列表可以不同,重写必须和父类方法名,参数列表,返回类型一样

    重载返回值可以相同也可以不同,重写必须一样

    重载:方法名一致,参数列表中参数的顺序,类型,个数不同。

    重载与方法的返回值无关,存在于父类和子类,同类中。

    可以抛出不同的异常,可以有不同修饰符。

    重写:参数列表、方法名、返回值类型必须完全一致;

    构造方法不能被重写;

    声明为 final 的方法不能被重写;

    声明为 static 的方法不存在重写(重写和多态联合才有意义);

    访问权限不能比父类更低;

    重写之后的方法不能抛出更宽泛的异常;

  7. string类型可以被继承吗?

    string类在声明时使用final关键字修饰符修饰,无法被继承

    可以使多线程安全,在数据库中的数据中用字符串形式,防止黑客随意修改,造成安全问题

  8. final关键字的除了修饰符,其他的用法?

    final修饰的变量,一旦赋值,不可以重新赋值,final修饰的方法无法覆盖,必须手动赋值,不能和abstract关键字一起使用,final是最终的,不可变的。

  9. &与&&的区别

    &是运算符是逻辑与,&&是短路与。

  10. equals结果相同,可能有不同的hashCode吗?

    不可能的,如果满足equals==true,他们的hashCode一定相同

    使用==操作符检查"参数是否为这个对象的引用";

    使用 instanceof操作符检查"参数是否为正确的类型";

    对于类中的关键属性,检查参数传入对象的属性是否与之相匹配;

    编写完equals方法后,问自己它是否满足对称性、传递性、一致性;

    重写equals时总是要重写hashCode;

    不要将equals方法参数中的Object对象替换为其他的类型,在重写时不要忘掉@Override注解。

  11. 跳出多重循环

    在最外层加入outfor然后用break outfor.

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

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

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