回顾Java知识点,面试题汇总Day1(持续更新)

#创作灵感#

最近准备应聘Java开发工程师,但是工作大部分时间都在使用Ruby(觉得自己的Java技术不过硬)。现在正准备系统地学习下Java,在学习的过程中,遇到了一些面试题,整理归纳分享。

1.JDK和JRE的区别?

(1)JDK(Java Development Kit),开发工具包

(2)JRE(Java Runtime Environment),java运行环境

只需要运行Java,安装JRE;需要开发Java项目,必须安装JDK,包含JRE。

2.Java是解释型语言吗?

Java不是解释型语言(混合型------先编译,后解释),需要先编译成字节码(16进制)文件,再通过JVM(Java虚拟机)对字节码文件进行进一步的解析,生成机器码(二进制码),底层操作系统才能识别机器码进行程序的运行。

3.Java为什么需要先编译?

为了实现Java的一大特性:跨平台(同一套代码可以在不同的操作系统上运行)。

4.如何实现跨平台?

通过编译的方式。

Java源代码编译成字节码文件,字节码文件分别放到不同的操作系统中,由JVM将它们各自解析成对应操作系统的机器码进行执行。

.java->.class->运行

5.Java源代码编译成字节码的命令是什么?

javac 类型.java

6.Java字节码运行的命令是什么?

java 类名

5,6命令都可以省略,由开发工具帮助我们来完成。

7.为什么要使用变量?

解决数据存储地址的问题。

数据都是在内存中进行存储的,存在一个问题?程序会随机分配内存区域。

内存地址是16进制的数据,随机分配,地址很难记住

8.如何解决这个问题?

使用变量。

变量就是为了解决内存地址很难记忆的问题。

相当于给内存地址起了一个别名,取数据的时候直接通过变量名取即可,不需要再通过内存地址来取数据了。

java 复制代码
public class Test {
    public static void main(String[] args){
        int num = 100;
        num++;
        System.out.println(num);
    }
}
相关推荐
2301_780789663 小时前
跨平台适配!SDK 游戏盾兼容全终端游戏场景
java·网络·ddos
第九序言T4 小时前
Python 数据处理进阶(十八)批量处理同结构文件:一个文件夹一次跑完
开发语言·python·自动化·pandas·数据处理
学长毕设4 小时前
基于springboot的食品仓库管理系统
java·spring boot·后端
步行cgn5 小时前
FormHttpMessageConverter 详解:Spring MVC 中表单数据的读写转换器
java·spring·mvc
龙亘川5 小时前
构建城市公共安全数字底座:亘川智城智慧安防系统全维度解读
java·大数据·开发语言·人工智能·信息可视化
金銀銅鐵5 小时前
[Java] 用 CLI 展示 EnumMap 增删键值对时的内部变化
java·源码·ai编程
程序喵大人5 小时前
【C++入门】内存模型与资源管理 - 09 shared_ptr 和 weak_ptr 解决共享,也带来代价
开发语言·c++·资源管理·智能指针·内存模型
秋天的怀念_David5 小时前
第二十二夜 · 数字迷雾
java·程序人生·算法
Raas1006 小时前
AI网关部署方案?从部署到上线全流程
java·开发语言·人工智能·gateway·ai网关·企业级ai网关·企业级ai产品
niucloud-admin6 小时前
NIUCLOUD PHP SAAS上门家政使用文档:城市管理
java·前端·php