Java笔记——Java 初识_java 版本历史

Java笔记——Java 初识_java 版本历史 Java笔记——Java 初识_java 版本历史Java 的发展历程Sun 公司Stanford University Network斯坦福大学网络公司。Oracle 公司。2004 年发布 Java 5.02014 年发布 Java 8从 Java 9 开始每 6 个月发布一次 Java。其实从 Java 6 开始及之后版本号就是整数如 Java 6 而不是 Java 6.0上面的图片略有错误。普通版本也叫过渡版本。正式版本也叫长期支持版本LTS。Java SEJava EEJava MEJava 技术体系分为三个平台Java SEJava EEJava ME。Java SEJava Standard Edition标准版支持面向桌面级应用如 Windows 系统下的应用程序的 Java 平台提供了完整的 Java 核心 API此版本以前称为 J2SE。Java EEJava enterprise Edition企业版是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如ServletJsp 等主要针对于 Web 应用程序开发。此版本以前称为 J2EE。企业版相当于是在标准版基础上进行了一个扩展可以支持更多的技术。Java MEJava Micro Edition小型版支持 Java 程序运行在移动终端手机PDA上的平台对 Java API 有所精简并加入了针对移动终端的支持此版本以前称为 J2ME。自从安卓出来后Java ME 就很少有人用了。除了 “标准版”Standard Edition之外Sun 公司还推出了另外两个版本一个是用于手机等嵌入式设备的 “微型版”Micro Edition; 另一个是用于服务器端处理的 “企业版”Enterprise Edition。Besides the Standard Edition, two other editions were introduced: the Micro Edition for embedded devices such as cell phones, and the Enterprise Edition for server-side processing.Besides the Standard Edition, two other editions were introduced: the Micro Edition for embedded devices such as cell phones, and the Enterprise Edition for server-side processing.Java 能做什么Java 的主要特性与 C 和 C 不同Java 规范中没有 “依赖具体实现” 的地方。基本数据类型的大小以及有关运算的行为都是明确的。例如Java 中的 int 总是 32 位整数而在 C 和 C 中int 可能是 16 位整数、32 位整数也可能是编译器开发商指定的任何其他大小。唯一的限制是int 类型的字节数不能低于 short int并且不能高于 long int。在 Java 中数值类型有固定的字节数这消除了代码移植时一个令人头痛的主要问题。二进制数据以固定的格式进行存储和传输消除了有关字节顺序的困扰。字符串则采用标准的 Unicode 格式存储。作为系统组成部分的类库定义了可移植的接口。例如有一个抽象 Window 类并给出了面向 UNIX、Windows 和 Macintosh 环境的不同实现。JVM 和 JDKJVMJava Virtual MachineJava 虚拟机。JREJava Runtime EnvironmentJava 运行环境。JDKJava Development KitJava 开发工具包。JRE JVM 核心类库 运行工具JDK JVM 核心类库 开发工具核心类库Java 已经写好的东西直接拿来用即可。开发工具包括javac编译工具java运行工具jdb调试工具jhat内存分析工具等。运行工具是从开发工具中抽取出来的比如去掉了编译工具javac调试工具jdb等但是包括运行工具java等。JVM 是一个虚拟的计算机具有指令集并使用不同的存储区域。负责执行指令管理数据内存寄存器。JVM 是真正运行 Java 程序的地方。不同的平台有不同的 JVM。JVM 机制屏蔽了底层运行平台的差别实现了 “一次编译处处运行”。如果想要运行一个已经开发好的 Java 程序计算机中只需安装 JRE 即可。JDK 是提供给 Java 开发人员使用的其中包含了 Java 的开发工具也包括了 JRE所以如果安装了 JDK就不用再单独安装 JRE 了。JDK 包含了 JREJRE 包含了 JVM。因为不同的操作系统需要不同的 JVM而 JVM 又是包含于 JDK 的因此不同的操作系统就需要安装不同的 JDK。跨平台的原理Java 语言的跨平台是通过虚拟机实现的。Java 语言不是直接运行在操作系统里面的。而是运行在虚拟机中的。针对于不同的操作系统安装不同的虚拟机就可以了。一个编译好的.class文件可以在多个操作系统中运行只要这些平台安装了各自对应的 JVM 即可。因为有了 JVM同一个 Java 程序就可以在不同的操作系统中执行这样就实现了 Java 程序的跨平台性。Java 程序执行原理Java 是混合型语言需要先编译后解释执行。编译器会给字节码文件自动命名基本名和源文件名一致扩展名为.class。Java 程序不是直接运行在系统中的而是运行在虚拟机中的。字节码文件在虚拟机中运行虚拟机才是字节码文件真正运行的地方。虚拟机总是从公共类的 main() 方法开始执行。在 DOS 窗口运行 Java 源文件先切换到源文件所在路径。先将 Java 源文件xxx.java编译为字节码文件xxx.class在 DOS 窗口执行命令javac xxx.java再运行字节码文件在 DOS 窗口执行命令java xxx例如用javac命令来编译源文件要带上后缀名编译成计算机可执行的文件。其中c代表compile。javac.exe是编译工具java.exe是运行工具。编译得到后缀名为.class的文件。这是一个字节码文件。.class文件不能直接被机器执行需要用解释器解释执行。用 java 命令执行.class文件不带后缀名得到结果。这是把.class文件装载到 JVM 中去执行。Java 程序的组织结构源文件的基本组成是类。类是所有 Java 程序的构建模块Java 程序中的所有内容都必须放在类中。Java 程序的执行入口是main()方法有固定的书写格式public static void main(String[] args){ }public static void main(String[] args){ }一个源文件可以有多个类每次编译完每一个类都会生成一个对应的基本名与类名相同的.class文件。如果源文件包含一个public类则该源文件必须按该类命名。一个源文件中最多只能有一个public类公共类其它类的个数不限也可以将main()方法写在非public类中然后指定运行非public类这样入口方法就是非public类的main()方法。一个类只能有一个main()方法一个源文件可以有多个类每一个类都可以有一个main()方法因此一个源文件可以有多个main()方法。public类叫做公共类main()方法叫做主方法。程序示例// public static void main(String[] args) 表示一个主方法主方法是程序的入口 public class Hello{ // 编写一个主方法即 main() 方法 public static void main(String[] args){ System.out.println(Hello World); System.out.println(Xiao Cheng is studying Java.); } } class Dog{ public static void main(String[] args){ System.out.println(Dog); } } class Tiger{ public static void main(String[] args){ System.out.println(Tiger); } }// public static void main(String[] args) 表示一个主方法主方法是程序的入口 public class Hello{ // 编写一个主方法即 main() 方法 public static void main(String[] args){ System.out.println(Hello World); System.out.println(Xiao Cheng is studying Java.); } } class Dog{ public static void main(String[] args){ System.out.println(Dog); } } class Tiger{ public static void main(String[] args){ System.out.println(Tiger); } }此处的源文件名取为Hello.java编译之前文件夹的内容编译之后文件夹的内容以不同的类作为主类来运行程序类中可以有一个或多个方法方法必须在类的内部声明。《网络安全从零到精通全套学习大礼包》96节从入门到精通的全套视频教程免费领取如果你也想通过学网络安全技术去帮助就业和转行我可以把我自己亲自录制的96节 从零基础到精通的视频教程以及配套学习资料无偿分享给你。网络安全学习路线图想要学习 网络安全作为新手一定要先按照路线图学习方向不对努力白费。对于从来没有接触过网络安全的同学我帮大家准备了从零基础到精通学习成长路线图以及学习规划。可以说是最科学最系统的学习路线大家跟着这个路线图学习准没错。配套实战项目/源码所有视频教程所涉及的实战项目和项目源码学习电子书籍学习网络安全必看的书籍和文章的PDF市面上网络安全书籍确实太多了这些是我精选出来的面试真题/经验以上资料如何领取ttps://i-blog.csdnimg.cn/direct/92a6ab8e26034045b97ae8ac36b2a650.png)以上资料如何领取