一.计算机语言的发展
-
机器语言(二进制)
-
汇编语言 (有一些简单的指令)
-
高级语言 ( c, c++)
-
面向对象语言 (java )
二.java的历程
在二十世纪九十年代,sun公司为了抢占市场,在1991年成立了一个称为Green的项目小组
其中就有后来的Java之父——詹姆斯·高斯林。
由于C++所具有的优势,项目成员决定采用C++来编写程序,又由于当时单片式系统的限制,C++显得过于庞大和负责,所以他们决定开发一种新的编程语言,Java的前身——Oak语言就此诞生。
一开始,sun公司准备将oak语言用于硬件芯片,但开发商不敢为了新出现的语言冒险,于是oak因为没有硬件而被搁置上市。
在1994年6,7月时,项目团队经过三天讨论,决定将oak语言应用于万维网。
在1995年因特网的蓬勃发展下,oak终于等来了自己的机会。业界为了使死板、单调的静态网页能够“灵活”起来,急需一种软件技术来开发一种程序,这种程序可以通过网络传播并且能够跨平台运行。于是,世界各大IT企业为此纷纷投入了大量的人力、物力和财力。这个时候,Sun公司想起了那个被搁置起来很久的Oak,并且重新审视了那个用软件编写的试验平台,由于它是按照嵌入式系统硬件平台体系结构进行编写的,所以非常小,特别适用于网络上的传输系统,而Oak也是一种精简的语言,程序非常小,适合在网络上传输。Sun公司首先推出了可以嵌入网页并且可以随同网页在网络上传输的Applet(Applet是一种将小程序嵌入到网页中进行执行的技术),并将Oak更名为Java。5月23日,Sun公司在Sun world会议上正式发布Java和HotJava浏览器。IBM、Apple、DEC、Adobe、HP、Oracle、Netscape和微软等各大公司都纷纷停止了自己的相关开发项目,竞相购买了Java使用许可证,并为自己的产品开发了相应的Java平台。
至此,Java开始走向神坛。
1996年1月,Sun公司发布了Java的第一个开发工具包(JDK 1.0)
1997年2月,JDK 1.1面世
1998年12月8日,第二代Java平台的企业版J2EE发布
1999年4月27日,HotSpot虚拟机发布。
1999年6月,Sun公司发布了第二代Java平台(简称为Java2)的3个版本:J2SE(Java 2平台的标准版),J2EE(Java 2平台的企业版),J2ME(Java2平台的微型版)。
2000年5月,JDK1.3、JDK1.4和J2SE1.3相继发布,几周后其获得了Apple公司Mac OS X的工业标准的支持。
2005年6月,在Java One大会上,Sun公司发布了Java SE 6。此时,Java的各种版本已经更名,已取消其中的数字2,如J2EE更名为JavaEE,J2SE更名为JavaSE,J2ME更名为JavaME。
2006年11月13日,Java技术的发明者Sun公司宣布,将Java技术作为免费软件对外发布。
2009年,甲骨文公司宣布收购Sun。
2010年,Java编程语言的共同创始人之一詹姆斯·高斯林从Oracle公司辞职。
三.Java语言特性
1.简单性:
Java是基于C++语言创造的,为了使语言简单,Java舍弃了C++中复杂的指针和结构体,不需要自己管理内存等。
2.面向对象:
Java是一门面向对象的语言(我的理解是,过程不重要,结果最重要)
3.跨平台:
Java程序不是运行在操作系统上,而是运行在Java虚拟机(JVM)上,因此编写一个Java程序并编译后,就能在各个平台运行(如:window, liunx ,unix , mac os ),我们称之为:一次编译,到处运行。
4.多线程:
Java可以实现在同一时间运行多个程序的特点。
5.健壮性和安全性:
Java有自己的垃圾回收装置,同时又舍去了C++中的指针,防止了有人用伪造指针去指向存储器。
四、Java计算分类
1.java SE
JavaSE是Java的标准版,学会se是学习JavaEE的基础。
2.Java EE
java EE是Java的企业版,他有比SE更多的内容,支持大型企业级项目的开发,是目前应用最广泛的。
3.Java ME
Java ME是Java移动版,目前被Android取代。
PS:java版本可以分为1.1(有名的是1.1.8),1.2(又称2.0),1.3,1.4,1.5(又称5.0),1.6(又称6.0)。从1.2(2.0)开始,分为j2se,j2me 和j2ee。
所有Java1.7又叫Java7,Java1.8又叫Java8,直到Java10开始em没有别称。
五、Java安装
网上搜索就行
安装没啥,主要是问题
1.什么是 JAVA_HOME ?
JAVA_HOME 就是指定JDK的安装目录,(我理解的就是,给JDk的安装目录取了一个别名,方便使用)
2.什么是CLASS_PATH ?
CLASS_PATH: 指定了运行 Java 程序时, 查找 Java 程序文件的路径。
(我的理解是:每个Java程序运行后会生成一个后缀名为 class 的字节码文件,配置CLASS_PATH 的目的就是让jre去找到这个文件)
在配置的时候一定要在最前面加一个 ” .; ”不然运行会找不到程序。
在Java1.5开始,我们就不用配置这个,因为JRE会自动搜索类(class)文件,运行需要的Java类。
3.什么是PATH?
windows 系统根据 Path 环境变量来查找命令
(其实就是配置Javac指令的地址,当有程序需要用到Java指令时,就会去path配置的路径下寻找)
六、进制转换
十转二:除以二反向取余; 小数 :乘二去整,正向;
二转十:从右往左开始,位数上的数字 x 2^(位数减一次方)在相加
如 110 :0x2^(1-1) + 1x 2^(2-1) + 1x2^(3-1)=6
小数部分:差不多,只是 指数变为负而且指数不减一
七、存储单位
1.基本储存单元
位(bit):二进制数中的一个数位,可以是0或者1,是计算机中数据的最小单位。
字节(Byte,B):计算机中数据的基本单位,每8位组成一个字节。各种信息在计算机中存储、处理至少需要一个字节。例如,一个ASCII码用一个字节表示,一个汉字用两个字节表示。
字(Word):两个字节称为一个字。汉字的存储单位都是一个字。
2.扩展存储单位
-
在计算机各种存储介质(例如内存、硬盘、光盘等)的存储容量表示中,用户所接触到的存储单位不是位、字节和字,而是KB、MB、GB等,但这不是新的存储单位,而是基于字节换算的。
-
KB:1KB=1024B; 早期用的软盘有360KB和720KB的,不过软盘已经很少使用。
-
MB:1MB=1024KB; 早期微型机的内存有128MB、256MB、512MB,目前内存都是1GB、2GB甚至更大。
-
GB:1GB=1024MB; 早期微型机的硬盘有60GB、80GB,目前都是500GB、1TB甚至更大。
-
TB:1TB=1024GB; 目前个人用的微型机存储容量也都能达到这个级别了,而作为服务器或者专门的计算机,不可缺少这么大的存储容量。
八、IDEA破解安装
网上搜索就行
建议下载2021版