重返JAVA之路-初识JAVA

目录

1.什么是JDK?

2.什么是JRE?

3.什么是JVM?

4.JDK,JRE,JAM之间的关系是怎么样的?

5.什么是驼峰命名法?


1.什么是JDK?

  • JDK(Java Development Kit):Java 开发工具包,是 Java 开发人员用于开发 Java 程序的工具集合。它包含了 JRE 和一系列开发工具,像编译器(javac)、调试器等。

2.什么是JRE?

  • JRE(Java Runtime Environment):Java 运行时环境,是运行 Java 程序所必需的环境集合。它包含了 JVM 和 Java 核心类库以及支持文件。核心类库提供了基本的功能,如字符串处理、集合操作等。

3.什么是JVM?

  • JVM(Java Virtual Machine):Java 虚拟机,是 Java 程序的运行核心。它是一个抽象的计算机,通过软件模拟出计算机所需的 CPU、堆栈、寄存器等,能执行 Java 字节码。不同操作系统都有对应的 JVM 实现,这也是 Java 能实现 "一次编写,到处运行" 的关键。

4.JDK,JRE,JAM之间的关系是怎么样的?

  • 包含关系:JDK 包含 JRE,而 JRE 包含 JVM。可以把 JDK 看作是一个完整的 Java 开发环境,当你需要开发 Java 程序时,就需要安装 JDK。JRE 是运行 Java 程序的最小环境,如果仅要运行已有的 Java 程序,安装 JRE 即可。JVM 则是 Java 程序运行的基础,所有的 Java 程序都在 JVM 上执行。
  • 依赖关系:Java 程序开发依赖 JDK,因为开发过程中需要使用 JDK 提供的开发工具来编写、编译和调试代码。而编译后的 Java 程序(字节码文件)要运行,则依赖 JRE 中的 JVM,JVM 负责加载字节码并执行。

示意图:

复制代码
┌───────────────────────────────┐
│            JDK                │
│ ┌───────────────────────────┐ │
│ │            JRE            │ │
│ │ ┌───────────────────────┐ │ │
│ │ │         JVM           │ │ │
│ │ └───────────────────────┘ │ │
│ └───────────────────────────┘ │
└───────────────────────────────┘

5.什么是驼峰命名法?

  • Java 驼峰命名法是一种在 Java 编程里广泛使用的命名规范,能增强代码的可读性与可维护性。主要分为小驼峰命名法和大驼峰命名法。

小驼峰命名法(Camel Case)

  • 规则:首个单词的首字母小写,后续每个单词的首字母大写,其他字母小写。

  • 适用场景:常用于方法名、变量名。

  • 示例:

    java 复制代码
    public class CamelCaseExample {
        // 变量名使用小驼峰命名法
        private int studentAge;
        private String studentName;
    
        // 方法名使用小驼峰命名法
        public int getStudentAge() {
            return studentAge;
        }
    
        public void setStudentAge(int age) {
            this.studentAge = age;
        }
    }

大驼峰命名法(Pascal Case)

  • 规则:每个单词的首字母都大写,其他字母小写。

  • 适用场景:常用于类名、接口名。

  • 示例:

    java 复制代码
    // 类名使用大驼峰命名法
    public class StudentInformation {
        private int age;
        private String name;
    
        public StudentInformation(int age, String name) {
            this.age = age;
            this.name = name;
        }
    
        public int getAge() {
            return age;
        }
    
        public String getName() {
            return name;
        }
    }
    
    // 接口名使用大驼峰命名法
    interface AnimalBehavior {
        void eat();
        void sleep();
    }
相关推荐
liangsheng_g7 分钟前
微服务本地开发零配置隔离方案
java·微服务·架构
知识分享小能手9 分钟前
概理论与数理统计学习教程,从入门到精通,在数理统计中应用R软件(22)
开发语言·学习·r语言
不服老的小黑哥11 分钟前
六、集合处理(collections.md)
java
乐观勇敢坚强的老彭13 分钟前
C++信奥GESP四级的常见题型和解题模板速查表
开发语言·c++
denggun1234519 分钟前
信号量(DispatchSemaphore vs AsyncSemaphore)、swift协作式线程池 and python信号量
开发语言·python·swift
lisw0522 分钟前
计算与科学哲学(Philosophy of Computing and Science)
java·开发语言·人工智能
凤山老林23 分钟前
Spring Boot 集成 ShardingSphere-Encrypt 实现字段级实时脱敏
java·spring boot·后端·数据脱敏
vipxieliang23 分钟前
ValidX v1.2.0 更新日志
java·后端
叫我Paul就好1 小时前
Spring 为何没有在 Java之外的地方存在?
java·后端·spring
深念Y1 小时前
为什么选 Go:直观、可维护、AI 友好
linux·开发语言·人工智能·golang·agent·harness