Java 学习笔记 - 01
Java 定义:
Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。由于商标搜索显示Oak已被一家显卡制造商注册。于是同年,Oak被改名为Java。当使用十六进制编辑器打开由Java源代码编译出的二进制文件(.class文件)的话,最前面的32位将显示为CA FE BA BE,即词组“CAFE BABE”(咖啡屋宝贝)
Java 开发目的:
Java之所以被开发,是要达到以下五个目的:
- 应当使用面向对象程序设计方法学
- 应当允许同一程序在不同的计算机平台执行
- 应当包括内建的对计算机网络的支持
- 应当被设计成安全地执行远端代码
- 应当易于使用,并借鉴以前那些面向对象语言(如C++)的长处。
Java技术主要分成几个部分:Java语言、Java运行环境、类库。一般情况下说Java时并不区分指的是哪个部分。
Java语言特点:
- 面向对象oop思想:封装,多态,继承;
- 跨平台:JVM的存在实现跨平台;
- 多线程:无需调用操作系统的多线程功能就可以进行程序设计,类比C++;
- 编译与解释共存:Java程序需要先通过编译生成.class文件,然后通过解释器来执行。
关于JVM,JRE,JDK, 环境变量 的理解
JVM 解释
字节码: 在Java中,虚拟机识别的代码叫做字节码,通俗来讲就是 .class文件。类比Python和C一种是解释型,一种是编译型,但是Java存在虚拟机识别的字节码降低了解释型语言的效率慢的问题,但保持了解释型语言的可移植性特点,而且由于虚拟机的存在使得Java程序无须重新编译便可在多种不同的系统上运行。
虚拟机: JVM就是运行字节码的虚拟机,为了在不同的系统上运行相同的字节码(.class)出现相同的结果(机器码)----跨平台。
JRE 解释
JRE是java运行环境,其中包括:JVM,Java类库,Java命令和一些基础构件,但是不能编程;
JDK 解释
JDK是功能完备的Java SDK,包含了JRE,javac和jdb等,可编程;
环境变量 解释
让JDK可以在任意目录下运行,将该工具告诉系统,当使用该工具时,由系统帮我们去找指定目录;
关于Oracle JDK和Open JDK的理解
- Open JDK 完全开源,而Oracle JDK并不。
- Oracle JDK在虚拟机性能方面更出色,并且更稳定,但不会提供长期版本的支持,所以保持了用户的持续更新。
- Oracle JDK根据二进制代码协议获得许可,而Open JDK则是GPL v2许可。
参考文章: