23天学习Java编程(第一天:入门概述)
2020-06-05 06:26
183 查看
23天学习Java编程(第一天:入门概述)
Java语言概述
A:Java语言发展史
* 詹姆斯·高斯林(James Gosling)1977年获得了加拿大卡尔加里大学计算机科学学士学位,1983年获得了美国卡内基梅隆大学计算机科学博士学位,毕业后到IBM工作,设计IBM第一代工作站NeWS系统,但不受重视。后来转至Sun公司,1990年,与Patrick,Naughton和Mike Sheridan等人合作“绿色计划”。其原先的目的是为家用消费电子产品开发一个分布式代码系统,这样我们可以把E-mail发给电冰箱、电视机等家用电器,对它们进行控制,和它们进行信息交流。开始,准备采用C++,但C++太复杂,安全性差,最后基于C++开发一种新的语言Oak(Java的前身),Oak是一种用于网络的精巧而安全的语言,Sun公司曾依此投标一个交互式电视项目,但结果是被SGI打败。
1994年下半年,由于Internet的迅猛发展和环球信息网的快速增长,第一个全球信息网络浏览器Mosaic诞生了;此时,工业界对适合在网络异构环境下使用的语言有一种非常急迫的需求;Games Gosling决定改变绿色计划的发展方向,他们对Oak进行了小规模的改造,就这样,Java在1995年的3月23日诞生了!Java的诞生标志着互联网时代的开始,它能够被应用在全球信息网络的平台上编写互动性极强的Applet程序,而1995年的Applet无疑能给人们无穷的视觉和脑力震荡。但没有相应的开发库而只靠Java语言来进行开发肯定是困难重重,所以Sun公司在1996年的1月23日发布了JDK 1.0来帮助开发人员的开发
* SUN(Stanford University Network,斯坦福大学网络公司) ,Sun公司1986年上市,在NASDAQ的标识为SUNW后改为JAVA。
B:Java语言版本
* JDK 1.1.4 Sparkler 宝石 1997-09-12
* JDK 1.1.5 Pumpkin 南瓜 1997-12-13
* JDK 1.1.6 Abigail 阿比盖尔–女子名 1998-04-24
* JDK 1.1.7 Brutus 布鲁图–古罗马政治家和将军 1998-09-28
* JDK 1.1.8 Chelsea 切尔西–城市名 1999-04-08
* J2SE 1.2 Playground 运动场 1998-12-04
* J2SE 1.2.1 none 无 1999-03-30
* J2SE 1.2.2 Cricket 蟋蟀 1999-07-08
* J2SE 1.3 Kestrel 美洲红隼(sǔn) 2000-05-08
* J2SE 1.3.1 Ladybird 瓢虫 2001-05-17
* J2SE 1.4.0 Merlin 灰背隼 2002-02-13
* J2SE 1.4.1 grasshopper 蚱蜢 2002-09-16
* J2SE 1.4.2 Mantis 螳螂 2003-06-26
* JAVASE 5.0 (1.5.0) Tiger 老虎
* JAVASE 5.1 (1.5.1) Dragonfly 蜻蜓
* JAVASE 6.0 (1.6.0) Mustang 野马
* JAVASE 7.0 (1.7.0) Dolphin 海豚
C:Java语言平台
* J2SE(Java 2 Platform Standard Edition)标准版
* 是为开发普通桌面和商务应用程序提供的解决方案,该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发
* J2ME(Java 2 Platform Micro Edition)小型版
* 是为开发电子消费产品和嵌入式设备提供的解决方案
* J2EE(Java 2 Platform Enterprise Edition)企业版
* 是为开发企业环境下的应用程序提供的一套解决方案,该技术体系中包含的技术如 Servlet、Jsp等,主要针对于Web应用程序开发
JRE和JDK的概述
- A:什么是JRE(Java Runtime Environment) 包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
- JRE:JVM+类库。
-
JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用再单独安装JRE了。
JDK安装==>jdk安装.txt
JAVA_HOME:JDK安装路径
PATH:添加Java工具命令路径$JAVA_HOME/bin
CLASSPATH:Java类的装载路径,一般配置为.
export JAVA_HOME PATH CLASSPATH
export可以使环境变量在当前shell以及其子shell中都可用
JDK目录结构
bin:开发工具
include:头文件
db:自带的小型数据库
lib:类库
jre:java运行环境
src.zip:java源代码
Java特点
*开源!=免费
*简单易用
无指针、程序员不需要管理内存(GC)
*跨平台(JVM)
支持多线程(提高并发效率)
动态更新
面向对象编程
*安全(代码安全校验器)
write once run anywhere!
application software
malloc()/free()
new/delete
new
JVM:Java Virturl Machine
Java的跨平台,是字节码跨平台,JVM并不跨平台
JIT:Just In Time,即时编译器,提高java代码的运行效率
字节码校验器:
1)代码符合JVM规范
2)不能破坏系统完整性
3)不能有栈溢出
4)参数类型要正确
5)类型转换要正确
编程步骤:
1)编辑:vi Hello.java
2)编译:javac Hello.java
3)运行:java Hello
编程注意:
1)源文件以.java结尾
2)一个源文件中可以有多个class,但只能有一个是public的
3)源文件名必须和public的类名保持一致
包:package,解决命名冲突问题,分类管理
com.briup.zhangsan.Hello.java
com.briup.lisi.Hello.java
类的全限定名:包名+类名
javac -d
编程步骤2:
1)编辑:vi src/Hello.java
2)编译:javac -d classes src/Hello.java
3)运行:java -cp classes com.briup.chap01.Hello
jar -cvf my.jar com
jar -xvf my.jar
-cvf:将.class文件打包
-xvf:将.jar文件解包
API:Application Programming Interface,类的使用帮助文档
vi src/MyMath.java
vi src/MyMathTest.java
相关文章推荐
- swft入门学习-第一天
- Vue学习第一天 Vue2简单入门
- Pyhton入门第一天学习笔记
- MongoDB学习——第一天 基础入门
- Node.js入门学习(概述)
- 汇编入门学习----第一天(3)【原创】
- WebService第一天——概述与入门操作
- ECMAScript 6入门学习笔记第一天
- 学习JBoss概述入门
- python入门第一天学习
- C++入门学习第一天:c++与c的区别
- 汇编入门学习----第一天(2)【原创】
- Octave学习之入门第一天
- mybatis第一天——入门与概述
- 单片机学习入门一 学习概述
- 学习笔记(01):2019网络安全超详细入门教程-NTFS权限概述
- 8天学习MongoDB——第一天 基础入门
- Shrio第一天——入门与基本概述
- JavaSE入门学习33:Java集合框架概述
- 学习Python第一天:找了4本专属小白的书籍(前期入门打基础)