重返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();
    }
相关推荐
tb_first44 分钟前
LangChain4j简单入门
java·spring boot·langchain4j
毕设源码-邱学长1 小时前
【开题答辩全过程】以 基于PHP的发热病人管理平台的设计与实现为例,包含答辩的问题和答案
开发语言·php
HellowAmy1 小时前
我的C++规范 - 线程池
开发语言·c++·代码规范
独自破碎E1 小时前
【BISHI9】田忌赛马
android·java·开发语言
czy87874751 小时前
const 在 C/C++ 中的全面用法(C/C++ 差异+核心场景+实战示例)
c语言·开发语言·c++
范纹杉想快点毕业1 小时前
实战级ZYNQ中断状态机FIFO设计
java·开发语言·驱动开发·设计模式·架构·mfc
smileNicky1 小时前
布隆过滤器怎么提高误差率
java
それども1 小时前
分库分表的事务问题 - 怎么实现事务
java·数据库·mysql
Java面试题总结2 小时前
基于 Java 的 PDF 文本水印实现方案(iText7 示例)
java·python·pdf
马猴烧酒.2 小时前
【面试八股|Java集合】Java集合常考面试题详解
java·开发语言·python·面试·八股