前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Java】01 初识 Java

【Java】01 初识 Java

作者头像
Demo_Null
发布2020-09-28 11:08:05
1.4K0
发布2020-09-28 11:08:05
举报
文章被收录于专栏:Java 学习Java 学习

Java语言是美国 Sun 公司(Stanford University Network),在1995年推出的高级的编程语言。所谓编程语言,是计算机的语言,人们可以使用编程语言对计算机下达命令,让计算机完成人们需要的功能。

一、Java 简介

1.1 Java 发展史

—————— 选自 《 疯狂 Java 讲义(第四版)》

   Java 语言的诞生具有一定的戏剧性,它并不是经过精心策划、制作,最后产生的划时代产品,从某个角度来看,Java 语言的诞生完全是一种误会。    1990 年年末,Sun 公司预料嵌入式系统将在未来家用电器领域大显身手。于是 Sun 公司成立了一个由 James Gosling 领导的 “Green计划”,准备为下一代智能家电(如电视机、微波炉、电话)编写一个通用控制系统。    该团队最初考虑使用 C++ 语言,但是很多成员包括 Sun 的首席科学家 Bill Joy,发现 C++ 和可用的 APl 在某些方面存在很大问题。而且工作小组使用的是嵌入式平台,可用的系统资源极其有限。并且很多成员都发现 C++ 太复杂,以致很多开发者经常错误使用。而且 C++ 缺少垃圾回收系统、可移植性、分布式和多线程等功能。    根据可用的资金,Bill Joy 决定开发一种新语言,他提议在 C++ 的基础上,开发一种面向对象的环境。于是,Gosling 试图通过修改和扩展 C++ 的功能来满足这个要求,但是后来他放弃了。他决定创造一种全新的语言:Oak。    到了1992 年的夏天,Green 计划已经完成了新平台的部分功能,包括 Green 操作系统、Oak 的程序设计语言、类库等。同年11月,Green 计划被转化成 “FirstPerson有限公司”,一个 Sun 公司的全资子公司。    FirstPerson 团队致力于创建一种高度互动的设备。当时代华纳公司发布了一个关于电视机顶盒的征求提议书时,FirstPerson 改变了他们的目标,作为对征求提议书的响应,提出了一个机顶盒平台的提议。    但有线电视业界觉得 FirstPerson 的平台给予用户过多的控制权,因此 FirstPerson 的投标败给了 SGl,同时,与 3DO 公司的另外一笔关于机顶盒的交易也没有成功。此时,可怜的 Green 项目几乎接近天折,甚至 Green 项目组的一半成员也被调到了其他项目组。正如中国古代的寓言所言:塞翁失马,焉知非福?如果 Green 项目在机顶盒平台投标成功,也许就不会诞生 Java 这门伟大的语言了。    1994 年夏天,互联网和浏览器的出现不仅给广大互联网的用户带来了福音,也给 Oak 语言带来了新的生机。Gosling 立即意识到,这是一个机会,于是对 Oak 进行了小规模的改造,到了1994 年秋,小组中的 Naughton 和 Jonathan Payne 完成了第一个 Java 语言的网页浏览器:webRunner。Sun 公司实验室主任 Bert Sutherland 和技术总监 Eric Schmidt 观看了该浏览器的演示,对该浏览器的效果给予了高度评价。当时 Oak 这个商标已被别人注册,于是只得将 Oak 更名为 Java。    Sun 公司在1995 年年初发布了 Java 语言,Sun 公司直接把 Java 放到互联网上,免费给大家使用。甚至连源代码也不保密,也放在互联网上向所有人公开。    几个月后,让所有人都大吃一惊的事情发生了:Java 成了互联网上最热门的宝贝。竟然有10万多人次访问了 Sun 公司的网页,下载了 Java 语言。然后,互联网上立即就有数不清的 Java 小程序(也就是 Applet ),演示着各种小动画、小游戏等。    Java 语言终于扬眉吐气了,成为了一种广为人知的编程语言。    在 Java 语言出现之前,互联网的网页实质上就像是一张纸,不会有任何动态的内容。有了 Java 语言之后,浏览器的功能被扩大了,Java 程序可以直接在浏览器里运行,可以直接与远程服务器交互:用 Java 语言编程,可以在互联网上像传送电子邮件一样方便地传送程序文件!    1995 年,Sun 虽然推出了 Java,但这只是一种语言,如果想开发复杂的应用程序,必须要有一个强大的开发类库。因此,Sun 在 1996 年年初发布了 JDK1.0。这个版本包括两部分:运行环境(即JRE)和开发环境(即JDK),运行环境包括核心 API、集成 API、用户界面 API、发布技术、Java 虚拟机(JVM)5个部分:开发环境包括编译 Java 程序的编译器(即 javac 命令)。接着,Sun 在1997年2月18日发布了 JDK1.1。JDK1.1 增加了 JIT(即时编译)编译器。JIT 和传统的编译器不同,传统的编译器是编译一条,运行完后将其扔掉;而 JIT 会将经常用到的指令保存在内存中,当下次调用时就不需要重新编译了,通过这种方式让 JDK 在效率上有了较大提升。    但一直以来,Java 主要的应用就是网页上的 Applet 以及一些移动设备。到了1996 年年底,Flash 面世了,这是一种更加简单的动画设计软件:使用 Flash 几乎无须任何编程语言知识,就可以做出丰富多彩的动画。随后 Flash 增加了 ActionScript 编程脚本,Flash 逐渐蚕食了 Java 在网页上的应用。    从 1995 年 Java 的诞生到1998 年年底,Java 语言虽然成为了互联网上广泛使用的编程语言,但它并没有找到一个准确的定位,也没有找到它必须存在的理由:Java 语言可以编写 Applet,而 Flash 一样可以做到,而且更快,开发成本更低。    直到1998年12月,Sun 发布了 Java 历史上最重要的 JDK 版本:JDK1.2,伴随 JDK1.2 一同发布的还有 JSP/Servlet、EJB 等规范,并将 Java 分成了 J2EE、J2SE 和 J2ME 三个版本。    ⚑ J2SE:整个 Java 技术的核心和基础,它是 J2ME 和 J2EE 编程的基础。    ⚑ J2ME:主要用于控制移动设备和信息家电等有限存储的设备。    ⚑ J2EE:Java 技术中应用最广泛的部分,J2EE 提供了企业应用开发相关的完整解决方案。    这标志着 Java 已经吹响了向企业、桌面和移动三个领域进军的号角,标志着 Java 已经进入 Java2 时代,这个时期也是 Java 飞速发展的时期。    在 Java2 中,Java 发生了很多革命性的变化,而这些革命性的变化一直沿用到现在,对 Java 的发展形成了深远的影响。直到今天还经常看到 J2EE、J2ME 等名称。    不仅如此,JDK1.2 还把它的 APl 分成了三大类。    ⚑ 核心 API:由Sun公司制定的基本的 API,所有的 Java 平台都应该提供。这就是平常所说的Java核心类库。    ⚑ 可选 API:这是 Sun 为 JDK 提供的扩充 API,这些 API 因平台的不同而不同。    ⚑ 特殊 APl:用于满足特殊要求的 API。如用于 JCA 和 ICE 的第三方加密类库。    2002年2月,Sun 发布了 JDK 历史上最为成熟的版本:JDK1.4。此时由于 Compaq、Fujitsu、SAS、Symbian、IBM 等公司的参与,使 JDK1.4 成为发展最快的一个 JDK 版本。JDK1.4 已经可以使用 Java 实现大多数的应用了。    在此期间,Java 语言在企业应用领域大放异彩,涌现出大量基于 Java 语言的开源框架:Struts、WebWork、Hibemate、Spring 等;大量企业应用服务器也开始涌现:WebLogic、WebSphere、JBoss 等,这些都标志着 Java 语言进入了飞速发展时期。    2004年10月,Sun 发布了万众期待的 JDK1.5,同时,Sun 将 JDK1.5 改名为 Java SE5.0,J2EE、J2ME 也相应地改名为 JavaEE 和 Java ME。JDK1.5 增加了诸如泛型、增强的for 语句、可变数量的形参、注释(Annotations)、自动拆箱和装箱等功能;同时,也发布了新的企业级平台规范,如通过注释等新特性来简化 EJB 的复杂性,并推出了 EJB3.0 规范。还推出了自己的 MVC 框架规范:JSF,JSF 规范类似于 ASPNET 的服务器端控件,通过它可以快速地构建复杂的 JSP 界面。    2006年12月,Sun 公司发布了 JDK1.6(也被称为 JavaSE6 )。一直以来,Sun 公司维持着大约2年发布一次 JDK 新版本的习惯。    但在2009年4月20日,Oracle 宣布将以每股9.5美元的价格收购 Sun,该交易的总价值约为74亿美元。而 Oracle 通过收购 Sun 公司获得了两项软件资产:Java 和 Solaris。于是曾经代表一个时代的公司:Sun 终于被“雨打风吹”去,“江湖”上再也没有了 Sun 的身影。    多年以后,在新一辈的程序员心中可能会遗忘曾经的 Sun 公司,但老一辈的程序员们将永久地怀念 Sun 公司的传奇。    Sun 倒下了,不过 Java 的大旗依然猎猫作响。2007年11月,Google 宣布推出一款基于 Linux 平台的开源手机操作系统:Android。Android 的出现顺应了即将出现的移动互联网潮流,而且Android 系统的用户体验非常好,因此迅速成为手机操作系统的中坚力量。Android 平台使用了 Dalvik 虚拟机来运行 .dex 文件,Dalvik 虚拟机的作用类似于 JVM 虚拟机,只是它并未遵守 JVM 规范而已。Android 使用 Java 语言来开发应用程序,这也给了 Java 语言一个新的机会。在过去的岁月中,Java 语言作为服务器端编程语言,已经取得了极大的成功;而 Android 平台的流行,则让 Java 语言获得了在客户端程序上大展拳脚的机会。    2011年7月28日,Oracle 公司终于“如约”发布了 Java SE7——这次版本升级经过了将近5年时间。JavaSE7 也是 Oracle 发布的第一个 Java 版本,引入了二进制整数、支持字符串的 switch 语句、菱形语法、多异常捕捉、自动关闭资源的 try语句 等新特性。    2014年3月18日,Oracle 公司发布了 JavaSE8,这次版本升级为 Java 带来了全新的 Lambda 表达式、流式编程等大量新特性,这些新特性使得 Java 变得更加强大。    2017年9月22日,Oracle 公司发布了 JavaSE9,这次版本升级强化了 Java 的模块化系统,让庞大的 Java 语言更轻量化,而且采用了更高效、更智能的 Gl 垃圾回收器,并在核心类库上进行了大量更新,可以进一步简化编程:但对语法本身更新并不多(毕竟 Java 语言已经足够成熟)。

在这里插入图片描述
在这里插入图片描述

1.2 Java 的特点

  • 面向对象 ===
  • 跨平台 跨平台性是指软件可以不受计算机硬件和操作系统的约束而在任意计算机环境下正常运行。Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”。
在这里插入图片描述
在这里插入图片描述

1.3 Java 相关概念

1.3.1 JVM

   JVM 是 Java Virtual Machine( Java 虚拟机)的缩写,就是我们常说的java虚拟机。Java 语言在不同平台上运行时不需要重新编译。Java 语言使用 Java 虚拟机屏蔽了与具体平台相关的信息,使得 Java 语言编译程序只需生成在 Java 虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。    Java 虚拟机本质上就是一个程序,当它在命令行上启动的时候,就开始执行保存在某字节码文件中的指令。Java 语言的可移植性正是建立在 Java 虚拟机的基础上。任何平台只要装有针对于该平台的 Java 虚拟机,字节码文件(.class)就可以在该平台上运行。这就是“一次编译,多次运行”。

1.3.2 JRE

   JRE是 Java Runtime Environment 的缩写。它用于提供运行时环境。它是 JVM 的实现。它是实际存在的。它包含一组库和 JVM 在运行时使用的其他文件。

1.3.3 JDK

   JDK 是 Java Development Kit 的缩写,它是 Java 的开发环境。它包含 JRE + 开发工具。

1.3.4 Java 1.8 示意图
在这里插入图片描述
在这里插入图片描述

二、第一个 Java 程序

2.1 搭建 Java 环境

2.1.1 下载 JDK

推荐下载 JDK 1.8

2.1.2 安装 JDK

安装置指定路径,建议将 java 相关安装至同一目录下,方便管理

在这里插入图片描述
在这里插入图片描述

一直 下一步 即可,

在这里插入图片描述
在这里插入图片描述
2.1.3 配置环境变量

① 右击此电脑☛属性☛高级系统设置☛环境变量

在这里插入图片描述
在这里插入图片描述

② 新建 JAVA_HOME

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

③ 添加 JAVA_HOME 至 path

在这里插入图片描述
在这里插入图片描述
2.1.4 验证 JDK 是否安装成功

Windows + R 执行 cmd, 在命令行中执行 java,出现如下内容即为配置成功

在这里插入图片描述
在这里插入图片描述

2.2 运行 Java 程序

① 新建 txt 文档,复制如下代码

public class HelloWorld {
     public static void main(String[] args) {
         System.out.println("HelloWorld!");
     }
 }

② 修改文件名及后缀为:HelloWorld.java ③ 在目标文件所在文件夹,按下 Shift + 鼠标右键,选择 在此处打开 PowerShell 窗口 ④ 执行 javac HelloWorld.java 编译 java 代码,执行成功后会生成名为 HelloWorld.class 的字节码文件

在这里插入图片描述
在这里插入图片描述

⑤ 运行 java 代码,在 PowerShell 窗口执行 java HelloWorld,执行成功后会打印一行 HelloWorld!

在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-04-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Java 简介
    • 1.1 Java 发展史
      • 1.2 Java 的特点
        • 1.3 Java 相关概念
          • 1.3.1 JVM
          • 1.3.2 JRE
          • 1.3.3 JDK
          • 1.3.4 Java 1.8 示意图
      • 二、第一个 Java 程序
        • 2.1 搭建 Java 环境
          • 2.1.1 下载 JDK
          • 2.1.2 安装 JDK
          • 2.1.3 配置环境变量
          • 2.1.4 验证 JDK 是否安装成功
        • 2.2 运行 Java 程序
        相关产品与服务
        云开发 CloudBase
        云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档