1.第一章 Java基础语法 第一节(一)初识java
初识java
- 1.java的发展史
- 1.1、起源
- 1.2、演变
- 2.Java体系与特点
- 2.1java的体系
- 2.2java的应用
- 2.3java的特性
- 3.JVM,JDK,JRE与GC
- 3.1java的两种核心机制
- 3.1.1jvm虚拟机(JavaVirtualMachine)
- 3.1.2 垃圾回收器(GC)
- 3.2Java SE 组成的概念图
- 3.3JDK与JRE
- 3.3.1JDK(JavaDevelopmentKits)--Java开发工具集
- 3.3.2 JRE的三项主要功能
- 4.Java程序的类型
- 4.1程序的概念
- 4.2java程序的类型
- 5.java程序开发的三个步骤
- 6、java中的基本语法规则
- 6.1注释
- 6.2java代码的位置
- 6.3语法规则
- 6.2java代码的位置
- 6.3语法规则
1.java的发展史
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 在互联网的推动下火了。
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 公司紧接着推出了 JDK1.1,在推出后 3 周时间里,达到了近 22 万次的下载量。 4 月 2 日,首届 JavaOne 大会在美国旧金山召开,参加会议的人超过一万人,创造了当时全球同类 会议规模最高的纪录。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、JavaIDL、EJB、JavaPlug-in 等,在 API 文档中,添加了 strictfp 关键字和 Collections 集合类。
1999 年 4 月 27 日,HotSpot 虚拟机发布。HotSpot 是由一家叫“LongviewTechnologies”的小公司开 发的,后来被 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 语言发展史上的又一里程碑。为了表示该版本的重要 性,J2SE1.5 更名为 Java SE5.0(内部版本号 1.5.0)。Java SE5.0 包含了从 1996 年发布 1.0 版 本以来的最重大的更新,其中包括泛型支持、基本类型的自动装箱、改进的循环、枚举类型、格式化 I/O 及可变参数。
2005 年 6 月,在 JavaOne 大会上,Sun 公司发布了 JavaSE6。此时,Java 的各种版本已经更名, 已取消其中的数字 2,如 J2EE 更名为 JavaEE,J2SE 更名为 JavaSE,J2ME 更名为 JavaME。
2011 年 7 月 28 日,收购 Sun 公司的 Oracle 发布了 JavaSE7,引入了二进制整数、支持字符串的 switch 语句、棱形语法、多异常捕抓、自动关闭资源的 try 语言等新特性。
2014 年 3 月 18 日,Oracle 公司发布 Java SE8,这次版本升级为 Java 带来了全新的 Lambda 表达 式、流式编程等大量新特性,这些新特性使得 Java 变得更加强大。
2017 年 9 月 22 日,Oracle 公司发布 JavaSE9,这次版本升级强化了 Java 的模块化系统,让 Java 语言更轻量化,且采用了更高效、更智能的 GI 垃圾回收器,并在核心类库上进行大量更新,可进一 步简化编程。
2018 年 3 月 21 日,JavaSE10 发布,Java10 版本带来了很多新特性,其中最备受广大开发者 关注的莫过于局部变量类型推断。此外,还包垃圾收集器改善、GC 改进、性能提升、线程管控等新 特性。
2018 年 9 月 26 日,JavaSE11 发布。这是 Java 大版本周期变化后的第一个长期支持版本(LTS 版本持续支持到2026 年9月)。 Java11 带来了 ZGC、 HttpClient 等重要特性,一共包含 17 个 JEP (JDK Enhancement Proposals,JDK 增强提案)。
2019年3月20日, JavaSE12 发布。 Java12是短期支持版本,可在下一个版本发布之前获得Oracle 的商业支持。
2019 年 9 月 23 日,Java SE 13 发布,此版本中添加了“文本块”,文本块是一个多行字符串文字, 避免对大多数转义序列的需要,以可预测的方式自动格式化字符串,并在需要时让开发人员控制格式。
2.Java体系与特点
2.1java的体系
JavaSE:JavaPlatform,StandardEdition
标准版:各应用平台的基础,桌面开发和低端商务应用的解决方案。
JavaEE:JavaPlatform,EnterpriseEdition
企业版:以企业为环境而开发应用程序的解决方案
JavaME:JavaPlatform,MicroEdition 微
型版:致力于消费产品和嵌入式设备的最佳解决方案
2.2java的应用
开发桌面应用程序
银行软件、商场结算软件
开发面向Internet的web应用程序
门户网站(工商银行)、网上商城、阿里巴巴、电子商务网站
提供各行业的解决方案
金融、电信、电力…
嵌入式开发
移动电话、可视电话、数字机顶盒和汽车导航系统
2.3java的特性
一种纯面向对象的编程语言。
一种与平台无关(跨平台)的语言。
(它提供了在不同平台下运行的解释环境)
一种健壮的语言,吸收了C/C++语言的优点。
有较高的安全性。(自动回收垃圾,强制类型检查,取消指针)
3、java跨平台原理
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hiFrJocB-1600591528459)(D:\文档\Tencent Files\962253741\Image\C2C\UNOPY77G@CO9E6YP}79M76X.png)]
3.JVM,JDK,JRE与GC
3.1java的两种核心机制
3.1.1jvm虚拟机(JavaVirtualMachine)
JVM可以理解成一个可运行Java字节码的虚拟计算机系统
它有一个解释器组件,可以实现Java字节码和计算机操作系统之间的通信 ,对于不同的运行平台,有不同的JVM。
JVM屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”。
3.1.2 垃圾回收器(GC)
不再使用的内存空间应当进行回收-垃圾回收。
在C/C++等语言中,由程序员负责回收无用内存。
Java语言消除了程序员回收无用内存空间的责任: JVM提供了一种系统线程跟踪存储空间的分配情况。
并在JVM的空闲时,检查并释放那些可以被释放的存储空间。
垃圾回收器在Java程序运行过程中自动启用,程序员无法精确控制和干预。
3.2Java SE 组成的概念图
3.3JDK与JRE
3.3.1JDK(JavaDevelopmentKits)–Java开发工具集
包含:
- JRE(JavaRuntimeEnvironment)Java运行时环境
- JVM
- JavaAPI(应用程序编程接口)
- Java编译器(javac.exe)、Java运行时解释器(java.exe)、Java文档化化工具(javadoc.exe)及其它工具及资源
3.3.2 JRE的三项主要功能
- 加载代码:由类加载器(classloader)完成;
- 校验代码:由字节码校验器(bytecodeverifier)完成;
- 执行代码:由运行时解释器(runtimeinterpreter)完成。
4.Java程序的类型
4.1程序的概念
程序一词来自生活,通常指完成某些事务的一种既定方式和过程 在日常生活中,可以将程序看成对一系列动作的执行过程的描述
4.2java程序的类型
- 命今行程序
- GUI程序
- Applet程序
- J2EEweb应用程序
5.java程序开发的三个步骤
6、java中的基本语法规则
6.1注释
java程序有三种注释方式
1.单行注释://注释
2.多行注释:/* 注释 */
3.文档注释:/** 注释 */
文档注释可以用来自动地生成文档。在JDK中有个javadoc的工具,可以由源文件生成一个HTML文档。使用这种方式注释源文件的内容,显得很专业,并且可以随着源文件的保存而保存起来。也就是说,当修改源文件时,也可能对这个源代码的需求等一些注释性的文字进行修改,那么,这时候可以将源代码和文档一同保存,而不用再另外创建一个文档。文档注释可以用来实现自己代码的API
命令行命令:Javadoc -d apidoc *.Java (注意这个命令在你存放.Java文件下执行)
文档注释常用的标记
@author:指定java程序的作者
@version:指定源文件的版本
@deprecated:不推荐使用的方法
@param:方法参数说明信息
@return:方法返回值说明信息
@see:“参见,用于指定交叉参考的内容
@exception:抛出异常的类型
@throws :抛出的异常,和exception同义
6.2java代码的位置
class必须编写在.java文件中,且一个.Java文件中只能有一个public权限修饰的类。
关于权限在后期博客中提及
6.3语法规则
- java是严格区分大小写的
- java是一种自 由格式的语言
- 代码分为结构定义语句和功能执行语句
常,和exception同义
6.2java代码的位置
class必须编写在.java文件中,且一个.Java文件中只能有一个public权限修饰的类。
关于权限在后期博客中提及
6.3语法规则
- java是严格区分大小写的
- java是一种自 由格式的语言
- 代码分为结构定义语句和功能执行语句
- 功能执行语句的最后必须用分号结束
1.第一章 Java基础语法 第一节(一)初识java相关推荐
- Java基础语法(一)——初识Java
文章目录 一.Java语言概述 1.Java是什么 2.Java 的流行性 3.Java 的特性 (1) 简单性 (2)面向对象 (3) 分布式(微服务) (4) 健壮性 (5) 安全性 (6) 可移 ...
- 第一章计算机基础知识第一节,第一章 计算机基础知识 第一节
第一章计算机基础知识 第一节.了解计算机 尊敬的各位评委老师: 大家好!我今天说课的题目是<了解计算机>.我将从以下五方面来谈谈对这节课的设计:即说教材.学情分析.说教法和学法.说教学过程 ...
- Java基础语法(二)——数据类型
文章目录 Java基础语法(二)--数据类型 一.int 整型类型 1.基本语法格式 2.数值范围 3.未定义时变量的默认初始值 4.注意事项 二. long 长整型类型 1.基本语法格式 2.数值范 ...
- 【python第一章 基础捋顺,第二章 python基础语法】
第一章 基础捋顺,第二章 python基础语法 第一章 基础捋顺 第二章 python基础语法 2.1输入输出 2.2代码注释 2.3代码缩进 2.4命名规范 2.5变量 2.6基本数据类型 2.7数 ...
- 是介于小型机和微型计算机,第一章计算机基础解析.ppt
第一章计算机基础解析 一.计算机的基本组成 1.外形组成: 主机.显示器.键盘.鼠标.音箱. 2.根据规模大小分类: 微型计算机.小型计算机.中型计算 机.大型计算机.巨型计算机. 区别巨型.大型.中 ...
- pc都是微型计算机判断,(计算机应用基础统考)第一章 计算机基础知识
1.第一章计算机基础知识第一章计算机基础知识考试内容 l 计算机的发展过程.分类.应用范 围及特点:信息的基本概念 l 计算机系统的基本组成及各部件的 主要功能,数据存储的概念 l 数据在计算机中的表 ...
- 微型计算机基础 教案,第一章微型计算机基础知识新080902电子教案(153页)-原创力文档...
第一章 微型计算机基础知识;第一章? 微型计算机基础知识;§1.1 计算机中数的表示方法;1.1.1 进位计数制及各计数制间的转换;二进制数的特点; 十进制--符合人们的习惯二进制--便于物理实现十六 ...
- Java基础语法(三)——运算符
文章目录 Java基础语法(三)--运算符 一.算术运算符 1.基本四则运算符 (1)练习 (2)注意事项 2.复合运算符 3.自增自减操作符 二.关系运算符 三.逻辑操作符 1.逻辑与&&a ...
- 萌新向Python数据分析及数据挖掘 第一章 Python基础 第三节 列表简介 第四节 操作列表...
第一章 Python基础 第三节 列表简介 列表是是处理一组有序项目的数据结构,即可以在一个列表中存储一个序列的项目.列表中的元素包括在方括号([])中,每个元素之间用逗号分割.列表是可变的数据类型, ...
最新文章
- #jvm内存及GC机制#
- 等价类划分方法的应用
- Edit Distance Python源码及支持包的实现
- iCloud1_Getting Started
- python 将布尔数组取反的方法 True False(b=(a==False))
- CUDA从入门到精通(四):加深对设备的认识
- vscode最好看的主题推荐_新学期,幼儿园环创主题墙及楼道,这样布置最好看!...
- QUIC实战(五) 使用nginx quic开发分支部署支持HTTP3 的NGINX
- python classmethod_对Python中的@classmethod用法详解
- Vue 快速集成ElementUI
- melogin.cn主页登录_melogin.cn登录官网
- 拒绝:请求的对资源的访问被拒绝:泊坞窗
- neo4j 查询同一节点的两个上级_链表的魅力:两个单向链表的第一个交点
- 支持java浏览器_如何为浏览器安装支持JAVA的插件
- 三菱FX5U,机床X轴Y轴工作台定位控制程序 使用三菱J4-A系列伺服驱动器绝对位置系统,程序大小27000多步
- ajax跨域支持post,支持post请求的js跨域方法汇总
- 解决浏览器Adobe Flash Player不是最新版本问题
- Python实现求中位数
- 用友U8供应链期初数据录入案例教程2
- [004]Python数据类型二_python_全栈基础
热门文章
- linux系统下安装教程_手机安装linux系统安装教程
- STC32G库函数(五)——ADC检测反推电源电压
- 社会群体及分层问题研究类毕业论文文献都有哪些?
- 初学者之路——————离散卷积
- Python 本地股票数据分析处理
- 应用软件的作用是扩大计算机的存储容量,计算机基础知识专项练习题~公共基础...
- 百度云 职称计算机cad,职称计算机考试AutoCAD辅导资料
- 数控计算机软件的确认表怎么做,数控仿真系统操作(广数GSK980T)
- XML介绍之XML的语法与元素
- 腾讯云服务器重庆地域和成都地域区别及哪个更好