Java面试题(持续更新中)

一、Java基础+集合+多线程+JVM

1.Java基础

1.1面向对象和面向过程的区别

面向过程:面向过程的性能比面向对象高。因为类调用时需要实例化,消耗比较大,比较消耗资源,所以当性能是最重要的考量因素的时候,比如单片机、Linux/Unix、嵌入式开发等一般采用面向过程开发。但是,面向过程没有面向对象易维护、易复用、易扩展。

面向对象:面向对象易维护、易复用、易扩展。因为面向对象有封装、继承、多态的特性,所以可以设计出低耦合的系统,使系统更加灵活、更加易于维护。

这个并不是根本原因,面向过程也需要分配内存,计算内存偏移量,Java性能差的主要原因并不是因为它是面向对象语言,而是Java是半编译语言,最终的执行代码并不是可以直接被CPU执行的二进制机械码。

而面向过程语言大多数都是直接编译成机械码在电脑上执行,而其他一些面向过程脚本语言性能并不一定比Java好。

相关推荐
纨妙5 分钟前
python打卡day59
开发语言·python
neoooo8 分钟前
别慌,Java只有值传递——一次搞懂“为啥我改了它还不变”!
java·后端·spring
秋难降9 分钟前
Python 知识 “八股”:给有 C 和 Java 基础的你😁😁😁
java·python·c
wuxuanok11 分钟前
Web后端开发-请求响应
java·开发语言·笔记·学习
livemetee19 分钟前
spring-ai 1.0.0 (3)交互增强:Advisor 顾问模块
java
DDDDDouble25 分钟前
<二>Sping-AI alibaba 入门-记忆聊天及持久化
java·人工智能
Sally璐璐31 分钟前
IPSAN 共享存储详解:架构、优化与落地实践指南
开发语言·php
像风一样的男人@41 分钟前
python --货车装厢问题
开发语言·python
一切顺势而行43 分钟前
kafka总结
java
Humbunklung1 小时前
Rust枚举:让数据类型告别单调乏味
开发语言·后端·rust