Java基础常识

一、Java运行机制

1.Java运行原理

编译:.java(源代码) ---> .class(字节码)
解释:.class(字节码) ---> 加载并启动JVM(类加载) ---> .class(机器指令)
执行:通过JVM来完成运行输出

2.Java运行过程

Java基础常识_第1张图片

利用 javac 编译 .java   文件

利用 java   运行 .class 文件

3.Java虚拟机[JVM](java virtual machine)

在JVM的作用下,同一个Java程序可以在三个不用的操作系统中执行,实现了Java程序的跨平台性。 

Java基础常识_第2张图片

1) JVM 是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器,包含在 JDK 中。

2) 对于不同的平台,有不同的虚拟机。

3) Java 虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”

二、JDK和JRE的区别

1.JDK 基本介绍

1) JDK 的全称(Java Development Kit Java 开发工具包)

JDK = JRE + 开发工具集[java, javac,javadoc,javap 等]

2) JDK 是提供给 Java 开发人员使用的,其中包含了 java 的开发工具以及JRE。

2.JRE 基本介绍

1) JRE(Java Runtime Environment Java 运行环境)

JRE = JVM + Java SE 标准类库(java 核心类库)

2) 包括 Java 虚拟机(JVM Java Virtual Machine)和 Java 程序所需的核心类库等,如果想要运行一个开发好的 Java 程序, 计算机中只需要安装JRE。

3.JDK、JRE 和 JVM 的包含关系

1) JDK = JRE + 开发工具集(例如 Javac,java 编译工具等)

2) JRE = JVM + Java SE 标准类库(java 核心类库)

3) 如果只想运行开发好的 .class 文件 只需要 JRE

三、程序编写要求 

1.基础语法

例如以下代码: 

public class Hello
{
    public static void main(String[] args)
    {
        System.out.println("Hello World!\n");
    }
}
  1. public class Hello 表示 Hello 是一个类,是一个 public 公有的类。
  2. Hello{ } 表示一个类的开始和结束。
  3. public static void main(String[] args) 表示一个主方法,即我们程序的入口。
  4. main() {} 表示方法的开始和结束。
  5. System.out.println("hello,world~");输出语句。

2.注意事项

1.Java源文件以 .java 为扩展名。源文件的基本组成部分是类 (class) ,如本类中的Hello类。

2.Java应用程序的执行入口是main()方法。它有固定的书写格式:public static void main(String[] args) {...}

2.一个源文件中最多只能有一个public类。其它类的个数不限。这意味着含有多个类定义的文件进行编译之后会产生多个class文件。

3.如果源文件包含一个public类,则文件名必须按该类名命名。

4.一个源文件中最多只能有一个public类。其它类的个数不限,也可以将main方法写在非public类中,然后指定运行非public 类,这样入口方法就是非public 的main方法。

3.以C++的语法来描述

1.一个java文件内定义的多个类相当于C++中的命名空间,用来避免命名污染。

2.方法与C++的类内函数概念相同。

3.非public的类并不像C++中的默认private权限,而具有是包级私有访问权限。可在包内用限定符来进行访问。

4.第一个Java程序

public class Hello {
    public static void main(String[] args) {
        String message = "Hello World!\n";
        test.print(message);
    }
}
class test {
    static void print(String arg) {
        System.out.println(arg);
    }
}

 

你可能感兴趣的:(java从入门到吃土,java)