Java面试题及知识点Day1

自动拆箱和自动装箱

装箱就是自动将基本数据类型转换为包装器类型

拆箱就是自动将包装其类型转化为基本数据类型

重写和重载

重写

1.发生在子类和父类之间

2.参数的方法名,参数,返回值,必须相同

3.权限修饰符不能小于重写方法的权限修饰符

4.抛出的异常不能比重写方法抛出的异常更加宽泛

重载

重载方法的参数类型不同,参数个数不同,参数顺序不同,但是与返回值类型无关

hashcode 作用

根据对象的内存地址算出一个值,存放再该位置上,如果相等调用equals(),相同就不存了,不相同散列到其他位置

java的四种引用

强软弱虚

泛型以及使用好处

编写的代码可以别不同类型的对象所使用

好处有代码复用,不必为不同数据类型写多个集合,可以在编译时检查类型的合法性,约束数据类型

java创建对象的方式

1.new创建对象

2.反射创建对象

3.clone创建对象

4.通过反序列化创建对象(ObjectInputStream)

深拷贝和浅拷贝的区别

浅拷贝拷贝基本数据类型的值和引用数据类型的引用

深拷贝是创建一个对像复制其内容,与原来的对象完全独立

final有那些用法

被final修饰的类不可以被继承

被final修饰的方法不可以被重写

被final修饰的常量不可以被改变,修饰引用,引用不可以修改,引用的内容可以改

被fianl修饰的常量编译阶段会存入常量池之中

被fianl修饰的放JVM会尝试将其内联,提高效率

static的用法

用于修饰静态方法和静态变量

静态代码块,用于类的初始化

用于修饰静态内部类(实现单例模式)

3*0.1 == 0.3返回值是false

因为浮点数是不能精确表示有误差的

IO流的分类

按照流的流向来划分:输入流,输出流

按照流的操作单元来划分:字符流,节点流

按照角色来划分:节点流,处理流

javaIO和NIO

NIO是 new IO在java1.4中引入,NIO以块为单位,速度相较IO更快

java API中提供了两套NIO,一套用于网络编程,一套用于标准输入输出

反射

反射是一种运行期间的动态技术,可以在运行是访问,检测,修改自己的类,方法,属性

获取Class对象有四种方法

1.Class.forName("类的路径")

2.类名.Class

3.对象名.getClass

4.对于包装类可以使用Type属性

反射机制的优缺点

优点:

1.反射能够动态获取类的实例,提高灵活性

2.能够动态编译结合

缺点:

1.反射效率较低,需要解析字节码,从内存中获得对象

2.相对不安全,破坏了封装性

相关推荐
西安小哥16 分钟前
AI时代全栈面试通关指南:从背八股到聊架构
面试·ai编程
学者猫头鹰20 分钟前
分布式事务实战教程
java·分布式
咩咩啃树皮26 分钟前
第52篇:前端工程化完整体系精讲——Vite构建、模块化、打包原理、规范体系、面试终极通关
前端·面试·职场和发展
FogLetter29 分钟前
当JavaScript学会“分身术”:异步编程的进化简史
前端·javascript·面试
InKomorebi34 分钟前
Agent 五大工程体系:Prompt、Context、Loop、Graph 与 Harness
面试·llm
heimeiyingwang1 小时前
【架构实战】Kubernetes调度器深度剖析:从Pod调度到自定义调度器
java·架构·kubernetes
众人皆醒我独醉1 小时前
Triton Inference Server:NVIDIA 的推理"瑞士军刀"——LLM 只是它的一种负载
人工智能·面试·ai编程
纳兰青华3 小时前
回文侦探:三种境界破解最长回文子串
java·算法·动态规划
Zane19944 小时前
CAS 与原子类:Java 如何实现无锁编程
java·后端
TunerT_TQ4 小时前
【智能体安全治理|专栏第9期】从“一堆规则”到“数字宪法”:智能体治理的下一个阶段
java·开发语言·安全·开源治理·大模型安全·ai基础设施·智能体安全