Java特性
- 跨平台:利用计算机语言定义的软件可以在任何的操作系统上运行,即跨操作系统
- 计算机语言 定义的代码不能被计算机所直接识别
操作系统作用
-
向下管理计算机的硬件(CPU、内存计算机硬件、硬件协调工作是由操作系统来统一调配)
-
向上为软件的运行提供基础平台
-
软件的运行需要使用内存 CPU等计算机的硬件 软件不能直接操作硬件
-
软件的运行需要操作系统的识别, 操作系统识别了以后擦才能去按照软件定义的需要调配计算机硬件
计算机语言的编译
-
把当前定义的代码按照当前操作系统的格式进行编译
-
计算机操作系统:WINDOW LINUX MAC
-
目前操作系统所识别的指令的格式不同
- WINDOW上运行的格式 通常 exe格式
- 这种 exe格式的文件在 LINUX or MAC 上不能被识别
- 每一种操作系统能识别的格式是不同的
-
编译需要知道编译时的操作系统
JAVA的编译过程
-
使用 Java 语言定义的文件 xxx.java 称为Java源代码文件,不能直接运行,需要编译
-
Java的编译采用的是一种通用的格式,这个通用的格式不属于目前任何操作系统(这种格式是Java定义的一种格式)
-
class 文件 Demo.java 经过编译以后产生一个 Demo.class,是按照 JAVA定义的格式编译的结果 class文件称为字节码文件,编译阶段完成
编译阶段个任何操作系统没有关系)
- 实际开发的过程中 编译和运行时可能不在一台计算机上 ,编译阶段是在开发计算机上 ,运行是在服务器上
- 运行阶段:运行的时候运行是 class字节码文件,操作系统是不能识别的,但是java能识别,将其解释为计算机上操作系统能识别的指令集
- javac Demo.java 编译
- 执行后会产生一个 Demo.vclass文件
- Java Demo 运行
- Javac Java 这两个命令都是包含在 jdk中
- Javac 编译器
- Java 解释器
- Java真正运行是采用 JVM (java 虚拟机)
JAVA源代码 编译1次 ,只需把java源文件编译成 class文件,运行时再解释一次,做到跨平台
Java开发工具
- idea
- ecplise
- 初级阶段:高级记事本 sublime text3、editpluss notepad++
Java程序结构 首先定义一个文件(后缀名是.java) 一个文件的内容又类构成 一个类又若干个函数构成
Java中定义类
- 类是一个逻辑概念(文件的内容)
- 文件是一个物理概念(文件)
- Java文件 和 Java 类的关系
一个java 文件
Public static void main(String[] args){
}
- 在类的内部定义 main 称为 main函数, 函数名(){}
- Public static void main(String[] args){} 称为main函数
- 一个类是由多个函数组成,一个工程由多个 java剋构成
- 运行的时候需要有一个开始的地方
- JAVA 规定 main函数就是 JAVA 程序的开始地方,一切的执行都是从 main函数开始 又把 main称为 主函数
- Java中在控制台输出语句 System.out.println()