1. Java语言的跨平台性与字节码概述

发布于 2022年 04月 10日 10:44

Java是一种强类型,静态编译的语言。

跨平台性与字节码

Java编写的代码是通过JVM(Java Virtual Machine)作为桥梁,运行在不同的平台上。

什么是字节码?一个字节是由八个二进制位组成的,每位有1和0两个数字,最大可以表示255。Java为了实现跨平台性,在每个平台上实现了一个JVNM,为JVM开发的统一的标准化语言叫字节码。字节码就是由字节组成的。

这就像每个国家(系统)都有自己的语言,为了让这个国家的人理解你的语言,你就需要从每个国家找个懂英语的人(jvm),将英语(byte code)翻译成他们国家的语言,JVM就是这样的存在。

将Java代码转换成字节码的过程称为编译,在这个过程中会检查出代码的错误,如果出现错误,我们编写的代码就不会被编译成字节码。

Java的基本单元-类与包

Java最基本的结构就是类。

// public 是限定符
public class Cat {
    
}

java的默认包是src/main/java

package my.cute; // src/main/java/my/cute;
public Class Cat{ //  
    
}

按照约定 Cat应该位于 src/main/java/com/xxxx/Cat 中,即类名与文件名相同。

包的意义

类的名字是一个简单的字符串,为了避免重名,用包来区分它们。在代码的实际运行过程中,有的是全限定类名,而没有类这个东西。在不同的包下面可能有相同的文件名(类名)。JVM的工作就是按照类名去查找类,然后执行类中的代码。在JVM中没有简单的类名--Cat,全部是全限定类名--com.xxx.yyy.myClass

放在java.lang下的文件可以不需要引入而直接使用。 引入第三方包直接搜索包名 + maven,选择版本后复制maven对应的代码,放入pom中即可,

<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.4</version>
</dependency>

推荐文章