资讯动态

java基础篇面试模拟

发布时间:2026/9/11 18:58:39 来源:尧图企业网站定制
问题1.Java 8 你知道有什么新特性2.八种基本的数据类型对应字节数3.八种基本的数据类型对应字节数4.自动装箱和拆箱是什么5.面向对象的三大特征6.多态体现在哪几个方面7.抽象类和普通类的区别8.抽象类可以用final修饰吗9.为什么静态变量不能访问非静态变量10.java中final关键字的作用11.Object类有哪些方法12. 与 equals 有什么区别13.JVM、JDK、JRE三者关系14.long和int可以互转吗 15.为什么用bigDecimal 不用double 16.重载与重写有什么区别17.深拷贝和浅拷贝的区别18.什么是反射回答1.Java 8 核心是引入函数式编程Lambda 表达式(a,b) - ab 代替匿名内部类函数式接口只有一个抽象方法的接口方法引用Lambda 的简写Stream API链式处理集合追问Stream流怎么用的流程分三段数据源 → 中间操作不执行 → 终止操作执行。2.数值型整数类型byte、short、int、long和浮点类型float、double字符型char布尔型boolean3.byte1 / short2 / char2 / int4 / long8 / float4 / double8 / boolean4.装箱Boxing和拆箱Unboxing是将基本数据类型和对应的包装类之间进行转换的过程。自动装箱主要发生在赋值和方法调用时追问它们的底层原理5.封装继承多态6.方法重载方法重写接口与实现向上转型和向下转型7.实例化普通类可以直接实例化对象而抽象类不能被实例化只能被继承。方法实现普通类中的方法可以有具体的实现而抽象类中的方法可以有实现也可以没有实现。实现限制普通类可以被其他类继承和使用而抽象类一般用于作为基类被其他类继承和扩展使用。8.不能Java中的抽象类是用来被继承的而final修饰符用于禁止类被继承或方法被重写因此抽象类和final修饰符是互斥的不能同时使用。9.根本原因是生命周期不同静态成员随「类加载」而生实例成员随「new」而生类存在的时候可能一个对象都还没有自然访问不到还没出生的东西。10.修饰类当final修饰一个类时表示这个类不能被继承修饰方法用final修饰的方法不能在子类中被重写。修饰变量当final修饰基本数据类型的变量时该变量一旦被赋值就不能再改变。11.Object 是所有类的父类提供 11 个方法分成四组记对象信息组toString()默认返回 类名十六进制hashCodegetClass()返回运行时真实类型hashCode()返回哈希值比较组equals()拷贝与回收组clone()默认浅拷贝finlize()自Java 9起 废弃线程协作组wait() × 3 个重载 notify() notifyAll()必须在 synchronized 块里调用quals 比不比内容取决于这个类有没有重写它。12.是运算符equals是方法——这是最根本的区别。比基本类型时比的是值比引用类型时比的是内存地址是不是同一个对象。equals是Object的方法默认实现就是也是比地址只有重写过的类String、Integer才比内容——所以equals 比内容这个说法有前提。13.JVMJava Virtual Machine是Java虚拟机是Java程序运行的环境。JDKJava Development Kit是Java开发工具包是开发Java程序所需的工具集合。JREJava Runtime Environment是Java运行时环境是Java程序运行所需的最小环境。14.Java中的long和int可以相互转换。由于long类型的范围比int类型大因此将int转换为long是安全的而将long转换为int可能会导致数据丢失或溢出。15.double是二进制浮点数0.1在二进制里是无限循环小数BigDecimal全程整数运算所以完全精确一般牵扯到金钱的计算 , 都使用 BigDecimal16.重载Overloading指的是在同一个类中类的方法名相同、参数列表不同重写Overriding是 子类重写父类的方法方法名 参数列表必须相同17.浅拷贝是指只复制对象本身和其内部的值类型字段但不会复制对象内部的引用类型字段。深拷贝是指在复制对象的同时将对象内部的所有引用类型字段的内容也复制一份而不是共享引用。18.Java 反射机制是在运行状态中对于任意一个类都能够知道这个类中的所有属性和方法对于任意一个对象都能够调用它的任意一个方法和属性

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价