金九银十面试题之《语言特性》

这篇具有很好参考价值的文章主要介绍了金九银十面试题之《语言特性》。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🐮🐮🐮
辛苦牛,掌握主流技术栈,包括前端后端,已经7年时间,曾在税务机关从事开发工作,目前在国企任职。希望通过自己的不断分享,可以帮助各位想或者已经走在这条路上的朋友一定的帮助

前言

❤️金九银十马上就要来啦,各位小伙伴们有计划跳槽的要开始准备了,博主接下来一段时间会给大家持续更新面试题目,大家持续关注一下,感谢🙏🙏🙏
今天是专栏的最后一篇文章,关于java语言特性的相关面试题,欢迎指正
之前的面试文章链接也给到大家
金九银十面试题之Mysql
金九银十面试题之设计模式
金九银十面试题之数据结构和算法
金九银十面试题之Mybatis
金九银十面试题之《Spring Data JPA、Spring MVC、AOP》
金九银十面试题之《Spring IOC》
金九银十面试题之JUC
金九银十面试题之《并发》
金九银十面试题之《JVM》
金九银十面试题之《IO、集合》
金九银十面试题之《面向对象》

📟 Q1:Java 语言的优点?

  1. 平台无关性,摆脱硬件束缚,“一次编写,到处运行”。
  2. 相对安全的内存管理和访问机制,避免大部分内存泄漏和指针越界。
  3. 热点代码检测和运行时编译及优化,使程序随运行时间增⻓获得更高性能。 4 完善的应用程序接口,支持第三方类库。

📟 Q2:Java 如何实现平台无关?

JVM: Java 编译器可生成与计算机体系结构无关的字节码指令,字节码文件不仅可以轻易地在任何机器 上解释执行,还可以动态地转换成本地机器代码,转换是由 JVM 实现的,JVM 是平台相关的,屏蔽了不 同操作系统的差异。
语言规范: 基本数据类型大小有明确规定,例如 int 永远为 32 位,而 C/C++ 中可能是 16 位、32 位, 也可能是编译器开发商指定的其他大小。Java 中数值类型有固定字节数,二进制数据以固定格式存储和 传输,字符串采用标准的 Unicode 格式存储。

📟 Q3:JDK 和 JRE 的区别?

JDK: Java Development Kit,开发工具包。提供了编译运行 Java 程序的各种工具,包括编译器、JRE
及常用类库,是 JAVA 核心。
JRE: Java Runtime Environment,运行时环境,运行 Java 程序的必要环境,包括 JVM、核心类库、
核心配置工具。

📟 Q4:Java 按值调用还是引用调用?

按值调用指方法接收调用者提供的值,按引用调用指方法接收调用者提供的变量地址。
Java 总是按值调用,方法得到的是所有参数值的副本,传递对象时实际上方法接收的是对象引用的副 本。方法不能修改基本数据类型的参数,如果传递了一个 int 值 ,改变值不会影响实参,因为改变的是 值的一个副本。
可以改变对象参数的状态,但不能让对象参数引用一个新的对象。如果传递了一个 int 数组,改变数组 的内容会影响实参,而改变这个参数的引用并不会让实参引用新的数组对象。

📟 Q5:浅拷⻉和深拷⻉的区别?

浅拷⻉: 只复制当前对象的基本数据类型及引用变量,没有复制引用变量指向的实际对象。修改克隆对象可能影响原对象,不安全。
深拷⻉: 完全拷⻉基本数据类型和引用数据类型,安全。

📟 Q6:什么是反射?

在运行状态中,对于任意一个类都能知道它的所有属性和方法,对于任意一个对象都能调用它的任意方 法和属性,这种动态获取信息及调用对象方法的功能称为反射。缺点是破坏了封装性以及泛型约束。反 射是框架的核心,Spring 大量使用反射。

📟 Q7:Class 类的作用?如何获取一个 Class 对象?

在程序运行期间,Java 运行时系统为所有对象维护一个运行时类型标识,这个信息会跟踪每个对象所属 的类,虚拟机利用运行时类型信息选择要执行的正确方法,保存这些信息的类就是 Class,这是一个泛 型类。
获取 Class 对象:

  1. 类名.class 。
  2. 对象的 getClass方法。
  3. Class.forName(类的全限定名)。

📟 Q8:什么是注解?什么是元注解?

注解是一种标记,使类或接口附加额外信息,帮助编译器和 JVM 完成一些特定功能,例如 @Override
标识一个方法是重写方法。
元注解是自定义注解的注解,例如:
@Target:约束作用位置,值是 ElementType 枚举常量,包括 METHOD 方法、VARIABLE 变量、TYPE 类/接口、PARAMETER 方法参数、CONSTRUCTORS 构造方法和 LOACL_VARIABLE 局部变量等。
@Rentention:约束生命周期,值是 RetentionPolicy 枚举常量,包括 SOURCE 源码、CLASS 字节码和 RUNTIME 运行时。
@Documented:表明这个注解应该被 javadoc 记录。

📟 Q9:什么是泛型,有什么作用?

泛型本质是参数化类型,解决不确定对象具体类型的问题。泛型在定义处只具备执行 Object 方法的能 力。
泛型的好处:

  1. 类型安全,放置什么出来就是什么,不存在 ClassCastException。
  2. 提升可读性,编 码阶段就显式知道泛型集合、泛型方法等处理的对象类型。
  3. 代码重用,合并了同类型的处理代码。

📟 Q10:泛型擦除是什么?

泛型用于编译阶段,编译后的字节码文件不包含泛型类型信息,因为虚拟机没有泛型类型对象,所有对象都属于普通类。例如定义 List 或 List ,在编译后都会变成 List。定义一个泛型类型,会自动提供一个对应原始类型,类型变量会被擦除。如果没有限定类型就会替换为 Object,如果有限定类型就会替换为第一个限定类型,例如 <T extends A & B> 会使用 A 类型替换 T。

📟 Q11:JDK8 新特性有哪些?

lambda 表达式:允许把函数作为参数传递到方法,简化匿名内部类代码。
函数式接口:使用 @FunctionalInterface 标识,有且仅有一个抽象方法,可被隐式转换为 lambda 表 达式。
方法引用:可以引用已有类或对象的方法和构造方法,进一步简化 lambda 表达式。 接口:接口可以定义 default 修饰的默认方法,降低了接口升级的复杂性,还可以定义静态方法。
注解:引入重复注解机制,相同注解在同地方可以声明多次。注解作用范围也进行了扩展,可作用于局 部变量、泛型、方法异常等。
类型推测:加强了类型推测机制,使代码更加简洁。 Optional 类:处理空指针异常,提高代码可读性。

Stream 类:引入函数式编程⻛格,提供了很多功能,使代码更加简洁。方法包括 forEach 遍历、count 统计个数、filter 按条件过滤、limit 取前 n 个元素、skip 跳过前 n 个元素、map 映射加工、concat 合 并 stream 流等。
日期:增强了日期和时间 API,新的 java.time 包主要包含了处理日期、时间、日期/时间、时区、时刻 和时钟等操作。

JavaScript:提供了一个新的 JavaScript 引擎,允许在 JVM上运行特定 JavaScript 应用。

📟 Q12:异常有哪些分类?

所有异常都是 Throwable 的子类,分为 Error 和 Exception。Error 是 Java 运行时系统的内部错误和资 源耗尽错误,例如 StackOverFlowError 和 OutOfMemoryError,这种异常程序无法处理。
Exception 分为受检异常和非受检异常,受检异常需要在代码中显式处理,否则会编译出错,非受检异常 是运行时异常,继承自 RuntimeException。
受检异常:

  1. 无能为力型,如字段超⻓导致的 SQLException。
  2. 力所能及型,如未授权异常 UnAuthorizedException,程序可跳转权限申请⻚面。常⻅受检异常还有 FileNotFoundException、ClassNotFoundException、IOException等。

非受检异常:

  1. 可预测异常,例如 IndexOutOfBoundsException、NullPointerException、ClassCastException 等,这类异常应该提前处理。
  2. 需捕捉异常,例如进行 RPC 调用时的远程服务超时,这类异常客户端必须显式处理。
  3. 可透出异常,指框架或系统产生的且会自行处理的异常,例如 Spring 的 NoSuchRequestHandingMethodException,Spring 会自动完成异常处理,将异常自动映射到合适的 状态码。

写在最后

希望博主收集的内容能帮到大家,祝大家能找到一个好的工作,过好的生活,如有错误欢迎指正。 💐💐💐文章来源地址https://www.toymoban.com/news/detail-677919.html

到了这里,关于金九银十面试题之《语言特性》的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 金九银十面试题之《Spring Data JPA、Spring MVC、AOP》

    🐮🐮🐮 辛苦牛,掌握主流技术栈,包括前端后端,已经7年时间,曾在税务机关从事开发工作,目前在国企任职。希望通过自己的不断分享,可以帮助各位想或者已经走在这条路上的朋友一定的帮助 ❤️金九银十马上就要来啦,各位小伙伴们有计划跳槽的要开始准备了,博

    2024年02月15日
    浏览(33)
  • Java面试1000题突击班(抓住金九银十) 持续更新中(二)

    **Java面试1000题突击班(抓住金九银十) 持续更新中(一)** 1.Spring原理、特点等 原理:它是一个全面的、企业应用开发一站式的解决方案,贯穿表现层、业务层、持久层。但是Spring可以和其他框架无缝整合。 特点:轻量级、控制反转、面向、切面、容器(可以看我的SpringIO

    2024年02月08日
    浏览(36)
  • 2023金九银十Java面试八股文大全1200道面试题附答案详解,最全面详细

    我的回答是: 很有必要 。你可以讨厌这种模式,但你一定要去背,因为不背你就进不了大厂。现如今,Java 面试的本质就是八股文,把八股文面试题背好,面试才有可能表现好。金九银十招聘黄金季已经来临!大家在考研和找工作中纠结的时候,不妨先看一下面试题,毕竟我

    2024年02月13日
    浏览(33)
  • 金九银十面试怒拿6个offer——测试开发面试题整理

    金九银十面试怒拿6个offer——测试开发面试题整理 1、软件测试的流程是什么? 2、测试用例主要有哪些元素? 3、软件测试有什么策略和阶段? 4、黑盒测试和白盒测试是什么?二者有什么区别? 5、软件测试有什么类型? 6、测试用例是什么?有什么作用? 7、你平时是怎么

    2023年04月08日
    浏览(23)
  • 疫情下,我的金九银十计划

    2到3年是一个阶段,想要加薪,还得跳槽.我也不例外. 往年的3-4月、9-10月,招聘市场都有很多岗位可选,但今年真的是少得可怜.大家也感觉到了吧.还有份工作,活着好像真的也很不错了.不过该准备的还是准备,没准就有了呢. 以往的备战,我都打开百度,java面试攻略,找一大堆内容,没想

    2024年02月17日
    浏览(33)
  • 软件测试金九银十即将到来,求职套路多你有多大把握拿offer

    面试问题第一问,95%都会是:请简单的做个自我介绍吧~分以下几点说明。 1、年纪太大与太小,都不需要主动去说明。 比如我年纪只有20岁 例子:面试官您好,我叫***,来自于哪里,从事软件测试工作有几年了。 2、专业不对口也不要过多的去提及(提到了就会增加问你的概

    2024年02月10日
    浏览(24)
  • maven项目打包跳过单元测试,又是一年金九银十

    org.apache.maven.plugins maven-surefire-plugin 2.22.2 true 方法二(建议) 通过idea 工具实现,点击右上角 有点像闪电样子的图标,看到 test 被划掉了。然后点击maven 打包的功能就可以跳过测试了。 Maven命令栏的工具栏有下图中的图标,这个图标就是 Skip Tests。点击选中,再用LifeStyle中的

    2024年04月11日
    浏览(24)
  • Java面试题之JVM

    重新自己整理过后的JVM相关面试题,这里包括八股文和之前面试遇到的问题,后续会持续更新~ 程序计数器 :用于存放当前执行的字节码的行号指示器。它负责在多线程的情况下提供每个线程独立执行的能力,并保证每个线程都能正常运行。 java虚拟机栈 :与线程一一对应,

    2024年02月02日
    浏览(36)
  • java面试题之redis篇

    1.redis 中的数据类型有哪些 随着 Redis 版本的更新,后面又支持了四种数据类型: BitMap(2.2 版新增)、HyperLogLog(2.8 版新增)、GEO(3.2 版新增)、Stream(5.0 版新增) 。 Redis 五种数据类型的应用场景: String 类型的应用场景:缓存对象、常规计数、分布式锁、共享 session 信息

    2024年02月20日
    浏览(31)
  • 每日五道java面试题之java基础篇(十二)

    AQS是⼀个JAVA线程同步的框架。是JDK中很多锁⼯具的核⼼实现框架。 在AQS中,维护了⼀个信号量state和⼀个线程组成的双向链表队列。其中,这个线程队列,就是⽤来给线程排队的,⽽state就像是⼀个红绿灯,⽤来控制线程排队或者放⾏的。 在不同的场景下,有不⽤的意义。

    2024年02月20日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包