从头学 Java,复习环境搭建与基础知识,卷起来

44 篇文章 7 订阅
28 篇文章 2 订阅

目录

1、Java 起源与演变

1.1、起源

1.2、演变

2、Java 体系与特点

3、Java 跨平台原理

3.1、Java 技术的两种核心机制

3.3、垃圾回收器(GC)

3.4、JDK

4、什么是程序

5、语法

6、第一个程序


1Java 起源与演变

1.1、起源

20 世纪 90 年代,单片式计算机系统诞生,单片式计算机系统不仅廉价,而且功能强大,使用它
可以大幅度提升消费性电子产品的智能化程度。
SUN 公司为了抢占市场先机,在 1991 年成立了一个由詹姆斯 · 高斯林(James Gosling )领导,
名为 “Green” 项目小组,目的是开发一种能够在各种消费性电子产品上运行的程序架构。
那么使用何种编程语言来设计,是项目小组头疼的事。当时 C++ 较为有优势的,项目小组首先考
虑的是采用它来编写程序,但 C++ 过于复杂和庞大,再加上由于消费电子产品所采用的嵌入式处理器芯片的种类繁杂,需要让编写的程序跨平台运行,假如用 C++ 编写的话对程序的跨平台运行不友 好。 最后项目小组决定:既不用 C++ 编写,也不开发全新的编程语言,而是对 C++ 进行改造:去除了 C++ 复杂的指针和内存管理,并结合嵌入式系统的实时性要求,最终在 1992 年,他们开发了一种名 “Oak” 的面向对象语言。 当他们在向硬件生产商进行演示的时候,硬件生产商对此并不感冒, OaK 语言因为缺乏硬件的 支持而无法进入市场,从而被搁置一旁。 1994 年,项目小组看到了浏览器在未来的发展前景,于是决定将 OaK 应用于万维网。 1995 年,
他们用 OaK 语言研发了一种能将小程序嵌入到网页中执行的技术 ——Applet ,由于 Applet 不仅能嵌入网页,还可随同网页在网络上进行传输,这让无数的程序员看到了 OaK 这门语言,与此同时, OaK 正式更名为 Java 。从此, Java 在互联网的推动下火了。
Java与C++的最大区别:
Java是面向对象编程,无指针
C++是面向过程编程

1.2、演变

 

1996 1 月, SUN 公司推出了 JDK1.0 。在 JDK1.0 发布后,有很多程序员学习并运用 Java 来制作网页, JDK 包括两大部分:开发工具和运行环境。
运行环境包括核心 API 、集成 API 、用户界面 API 、发布技术、 Java 虚拟机 (JVM) JDK1.0 的发布,标志着 Java 成为一种独立的开发工具。在同年 9 月,约有 8.3 万个网页应用了 Java 技术来制作。
JDK1.0 的代表性技术有: Java 虚拟机、 Applet AWT 等。1997 2 月, SUN 公司紧接着推出了 JDK 1.1 ,在推出后 3 周时间里,达到了近 22 万次的下载量。
4 2 日,首届 Java One 大会在美国旧金山召开,参加会议的人超过一万人,创造了当时全球同类会议规模最高的纪录。 9 月, Java Developer Connection 社区成员超过 10 万,同年还有 10 个最主要的操作系统供应商正式声明将在他们的产品中使用 Java
JDK1.1 的代表性技术有: JDBC JavaBeans RMI JAR 文件格式、 Java 语法中的内部类和反射。
1998 12 8 日, JDK1.2—— 第二代 Java 平台的企业版 J2EE 发布。
1999 6 月, Sun 公司把 Java 体系分为三个方向:
J2ME (Java2 Micro Edition Java2 平台的微型版),应用于移动、无线及有限资源的环境;
J2SE (Java 2 Standard Edition Java 2 平台的标准版),应用于桌面环境;
J2EE (Java 2Enterprise Edition Java 2 平台的企业版),应用于基于 Java 的应用服务器。
随着供应商的不同, Java API 也分为三大类:
Java Core API Java 核心类库;
Java Optional API :对之前 API 的扩充;
特殊 API :由特殊厂商或组织提供的 API
Java 2 平台的发布,是 Java 发展过程中最重要的一个里程碑,标志着 Java 的应用开始普及。
JKD1.2 的代表性技术有: Swing Java IDL EJB Java Plug-in 等,在 API 文档中,添加了 strictfp
关键字和 Collections 集合类。
1999 4 27 日, HotSpot 虚拟机发布。 HotSpot 是由一家叫 “Longview Technologies” 的小公司开发的,后来被 SUN 公司收购。 HotSpot 虚拟机发布时是作为 JDK 1.2 的附加程序提供的,后来它成 为了 JDK 1.3 及之后所有版本的 Sun JDK 的默认虚拟机 。
2000 5 月, JDK1.3 JDK1.4 J2SE1.3 相继发布, J2SE1.3 是对 J2SE1.2 的补充和扩展,从应用领域的角度分析, JavaSE1.3 已经涵盖了数据库、 WEB 、网络、图形、多媒体、电话、影像等大 部分的信息技术领域。
2002 2 26 日, J2SE1.4 发布。与 J2SE1.3 相比,多了近 62% 的类和接口。在这些新特性当中,还提供了广泛的 XML 支持、安全套接字( Socket )支持(通过 SSL TLS 协议)、全新的 I/OAPI 正则表达式、日志与断言。2004 9 30 日, J2SE1.5 发布,成为 Java 语言发展史上的又一里程碑。为了表示该版本的重要
性, J2SE 1.5 更名为 Java SE 5.0 (内部版本号 1.5.0 )。 Java SE 5.0 包含了从 1996 年发布 1.0 版本以来的最重大的更新,其中包括泛型支持、基本类型的自动装箱、改进的循环、枚举类型、格式化 I/O 及可变参数。

……

2、Java 体系与特点

Java SE:Java Platform,Standard Edition
标准版:各应用平台的基础,桌面开发和低端商务应用的解决方案;
Java EE:Java Platform,Enterprise Edition
企业版:以企业为环境而开发应用程序的解决方案;
Java ME :Java Platform, Micro Edition
微型版:致力于消费产品 和嵌入式设备的最佳解决方案。

3、Java 跨平台原理

3.1、Java 技术的两种核心机制

Java 虚拟机(Java Virtual Machine) JVM
垃圾回收器(Garbage Collection) GC

3.2、Java 虚拟机(JVM)

JVM 可以理解成一个可运行 Java 字节码的虚拟计算机系统
  • 它有一个解释器组件,可以实现 Java 字节码和计算机操作系统之间的通信 
  • 对于不同的运行平台,有不同 的 JVM。
JVM 屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”(其实所有语言都支持)。

3.3、垃圾回收器(GC)

不再使用的内存空间应当进行回收-垃圾回收。
在 C/C++等语言中,由程序员负责回收无用内存。
Java 语言消除了程序员回收无用内存空间的责任:
JVM 提供了一种系统线程跟踪存储空间的分配情况。并在 JVM 的空闲时,检查并释放那些可以被释放的存储空间。
垃圾回收器在 Java 程序运行过程中自动启用,程序员无法精确控制和干预。

3.4、JDK

JDK(Java Development Kits)-- Java 开发工具集
JRE(Java Runtime Environment)Java 运行时环境
JVM
Java API (应用程序编程接口)
Java 编译器(javac.exe)、Java 运行时解释器(java.exe)、Java 文档化化工具(javadoc.exe)及其它工具及资源
JRE 的三项主要功能:
加载代码:由类加载器(class loader)完成;
校验代码:由字节码校验器(byte code verifier)完成;
  执行代码:由运行时解释器(runtime interpreter)完成。

4、什么是程序

程序一词来自生活,通常指完成某些事务的一种既定方式和过程

计算机中的程序

为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令(即命令)的集合

5、语法

注释 :java 程序有三种注释方式
单行注释://注释
多行注释:/*注释*/
文档注释:/**注释*/
java 代码的位置
class 必须编写在.java 文件中 (具体详情参考 helloWorld 工程)
语法规则
java 是严格区分大小写的
java 是一种自由格式的语言
代码分为结构定义语句和功能执行语句
功能执行语句的最后必须用分号结束

6、第一个程序

package kkb;

public class HelloWord {

	public static void main(String[] args) {
		//第一个程序
		System.out.println("Hello World!");

	}

}
以eclipse为例:

最后为大家提供jdk下载地址

https://www.oracle.com
https://www.oracle.com/java/technologies/javase-jdk11-downloads.html

若有其他需要请关注公众号(计算机基础与编程),底部图片扫码即添加

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

初尘屿风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值