Java常见的面试问题带答案,自己答出来多少

1、在java中如果声明一个类为final,表示什么意思?答:final是最终的意思,final可用于定义变量、方法和类但含义不同,声明为final的类不能被继承。父类的构造方法是否可以被子类覆盖(重写)?答:父类的构造方法不可以被子类覆盖,因为父类和子类的类名是不可能一样的。2、请讲述String 和StringBuffer...
Java常见的面试问题带答案,自己答出来多少
1、在java中如果声明一个类为final,表示什么意思?
答:final是最终的意思,final可用于定义变量、方法和类但含义不同,声明为final的类不能被继承。
父类的构造方法是否可以被子类覆盖(重写)?
答:父类的构造方法不可以被子类覆盖,因为父类和子类的类名是不可能一样的。
2、请讲述String 和StringBuffer的区别。
答:String 类所定义的对象是用于存放”长度固定”的字符串。
StringBuffer类所定义的对象是用于存放”长度可变动”的字符串。
3、如果有两个类A、B(注意不是接口),你想同时使用这两个类的功能,那么你会如何编写这个C类呢?
答:因为类A、B不是接口,所以是不可以直接继承的,但可以将A、B类定义成父子类,那么C类就能实现A、B类的功能了。假如A为B的父类,B为C的父类,此时C就能实现A、B的功能。
4、谈谈你对抽象类和接口的理解。
答:定义抽象类的目的是提供可由其子类共享的一般形式、子类可以根据自身需要扩展抽象类、抽象类不能实例化、抽象方法没有函数体、抽象方法必须在子类中给出具体实现。他使用extends来继承。
接口:一个接口允许一个类从几个接口继承而来,Java 程序一次只能继承一个类但可以实现几个接口,接口不能有任何具体的方法,接口也可用来定义可由类使用的一组常量。其实现方式是interface来实现。
5、Java中什么是竞态条件?
答:竞态条件会导致程序在并发情况下出现一些bugs。多线程对一些资源的竞争的时候就会产生竞态条件,如果首先要执行的程序竞争失败排到后面执行了,那么整个程序就会出现一些不确定的bugs。这种bugs很难发现而且会重复出现,因为线程间的随机竞争。
6、Java中如何停止一个线程?
答:Java提供了很丰富的API但没有为停止线程提供API。JDK 1.0本来有一些像stop(), suspend() 和 resume()的控制方法但是由于潜在的死锁威胁因此在后续的JDK版本中他们被弃用了,之后Java API的设计者就没有提供一个兼容且线程安全的方法来停止一个线程。当run() 或者 call() 方法执行完的时候线程会自动结束,如果要手动结束一个线程,你可以用volatile 布尔变量来退出run()方法的循环或者是取消任务来中断线程。点击这里查看示例代码。
7、 一个线程运行时发生异常会怎样?
答: 简单的说,如果异常没有被捕获该线程将会停止执行。Thread.UncaughtExceptionHandler是用于处理未捕获异常造成线程突然中断情况的一个内嵌接口。当一个未捕获异常将造成线程中断的时候JVM会使用Thread.getUncaughtExceptionHandler()来查询线程的UncaughtExceptionHandler并将线程和异常作为参数传递给handler的uncaughtException()方法进行处理。2018-02-06
mengvlog 阅读 11 次 更新于 2025-07-19 00:07:38 我来答关注问题0
  • 答:竞态条件会导致程序在并发情况下出现一些bugs。多线程对一些资源的竞争的时候就会产生竞态条件,如果首先要执行的程序竞争失败排到后面执行了,那么整个程序就会出现一些不确定的bugs。这种bugs很难发现而且会重复出现,因为线程间的随机竞争。6、Java中如何停止一个线程?答:Java提供了很丰富的API但没有...

  •  翡希信息咨询 一天一汇总Java面试:微服务篇

    可以根据IP或路径进行限流,设置每秒填充的平均速率和令牌桶的总容量。9. 限流常见的算法有哪些?答案:常见的限流算法包括:漏桶算法:把请求存入到桶中,以固定速率从桶中流出,可以让服务做到绝对的平均,起到很好的限流效果。令牌桶算法:在桶中存储的是令牌,按照一定的速率生成令牌,每个请求都要先...

  •  阿暄生活 java应届生笔试题 java应届毕业生面试题

    Java应届毕业生面试题及答案概要 一、Java基础概念 Java垃圾回收机制 答案:Java的垃圾回收机制是一种自动内存管理机制,它负责自动回收不再使用的对象占用的内存空间,以减轻程序员的内存管理负担。static静态方法是否可以被子类重写 答案:不可以。static静态方法是属于类的,而不是属于对象的,因此不能被子...

  •  翡希信息咨询 Java大厂高级面试题灵魂100问,面试官突击一问

    Java大厂高级面试题灵魂突击问题的核心答案如下:如何通过JVM判断一个对象可以被回收:引用计数法:每个对象维护一个引用计数器,当引用计数器为0时,对象可被回收。但此方法无法处理循环引用问题。可达性分析算法:主流JVM采用的方法。从GC Roots出发,通过引用链搜索可达对象。不可达的对象即为垃圾,可被回...

  •  翡希信息咨询 程序员的痛!为什么现在面试都会问八股文了,站在面试官的角度告诉你!

    面试中的“八股文”问题通常经过精心挑选,能够确保不同面试官对同一候选人的评价具有一致性。以下是一些Java面试中常见的“八股文”问题及简要答案示例:JDK和JRE的区别:JDK是Java开发工具包,包含JRE和开发工具;JRE是Java运行环境,包含JVM和核心类库。==和equals的区别:==比较的是两个引用是否指向同...

檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部