Java杂谈
Java 语言杂谈
Java由sun公司开发,后被oracle公司收购。
Java环境
java环境中涉及到几个概念:jdk/jre/jvm,三者的包含关系如下图:
1.jdk
Jdk 为Java语言为Java开发人员提供的工具包,包括
- java运行环境jre
- 工具包(如javac\javadoc)
- 基础类库lib
2.jre
Jre是Java语言为Java程序用户提供的运行Java程序的环境,包含jvm和lib,jre中的lib是jdk中lib的子集。
3.jvm
jvm是Java语言跨平台的核心,Java语言中,自底向上分别为硬件、OS、JVM,程序的平台不通用是源于硬件和OS环境不一致,JVM在硬件和OS上再次抽象出一台个运行环境,该环境被称为JVM,JVM为不同环境开发一个JVM,这些JVM致力于在不同平台上提供一个完全一致的虚拟运行环境,于是由.java文件编译成的.class文件可以不加修改的直接运行在所以具有虚拟机的平台环境上。
(小注:)java源程序首先被编译为字节码文件,字节码文件在jvm中解释运行,相比于C++等编译型源程序,java程序的优点是跨平台,但缺点时运行速度和资源占用可能不及C++;相比于纯解释型语言,java程序的速度又更快。
在命令行编译java源文件
1. 编写源文件Main.java
public class Main
{
public static void main(String [] args){
int a=1;
System.out.println(++a);
System.out.println("Hello my java");
}
}
2.编译源文件
javac Main.java
3.运行Main.class文件
java Main
编写的.java源文件通过javac命令编译为.class文件,.class字节码文件通过java命令在Jvm中解释运行。注意的是Jvm,在不同平台有又不同的实现,Jvm屏蔽了不同的平台细节,也就是说我的.class文件在windows上编译之后可以不加修改的拿到苹果系统上去运行(本质是拿到为苹果系统开发的Jvm中去运行),这是我们常说的一次编译处处运行。
javadoc & javap
1.javadoc命令用于将生成.java源文件的类文档
javadoc Main.java
javadoc命令与文档注释配合使用,常用的文档注释有
/**
* @author
* @data
* @version
*/
public class Main(){
/**
* @param count
* @return
*/
public string funTest(int count){
}
}
生成类文档可以使用开发工具去做,生成类文档后还可以使用jd2chm.exe快速将生成的多个文档打成chm文件。
2.javap命令用于反编译
反编译:就是将一个.class字节码文件反编译为一个.java源文件
javap Main
javap -c Main
命名规范v1.0
- 项目名为全小写下划线命名法
- 包名全小写单单词命名法
- 类名、接口名、枚举类名采用帕斯卡pascal命名法
- 方法名属性名采用小写驼峰命名法
- 常量采用全大写下划线命名法
近期评论