Java学习记录第一章

学习Java第一章的记录,这一章主要记录的是Java的最基础部分的了解知识,了解Java的特性和开发环境还有Java语言的优缺点.

计算机语言的发展大概过程:机器语言--->汇编语言--->高级语言(面向过程的语言和面向对象的语言)总而言之就是从人类比较难识别的字符串向人类自然语言靠近使代码的可读性越来越高。

Java的发展过程:1991年Sun公司为了抢占市场先机,成立了一个称为Green的项目小组,帕特里克、詹姆斯·高斯林、麦克·舍林丹和其他几个工程师一起组成的工作小组在加利福尼亚州门洛帕克市沙丘路的一个小工作室里面研究开发新技术,开发了一种称为Oak的面向对象语言,中间经过种种的波折于1995年将Oak更名为Java.

1996年1月,Sun公司发布了Java的第一个开发工具包(JDK 1.0),这是Java发展历程中的重要里程碑,标志着Java成为一种独立的开发工具。9月,约8.3万个网页应用了Java技术来制作。10月,Sun公司发布了Java平台的第一个即时(JIT)编译器。

1997年2月,JDK 1.1面世.

1998年12月8日,第二代Java平台的企业版J2EE发布。1999年6月,Sun公司发布了第二代Java平台(简称为Java2)的3个版本:J2ME(Java2 Micro Edition,Java2平台的微型版),应用于移动、无线及有限资源的环境;J2SE(Java 2 Standard Edition,Java 2平台的标准版),应用于桌面环境;J2EE(Java 2Enterprise Edition,Java 2平台的企业版),应用于基于Java的应用服务器。Java 2平台的发布,是Java发展过程中最重要的一个里程碑,标志着Java的应用开始普及。

1999年4月27日,HotSpot虚拟机发布。HotSpot虚拟机发布时是作为JDK 1.2的附加程序提供的,后来它成为了JDK 1.3及之后所有版本的Sun JDK的默认虚拟机

2001年9月24日,J2EE1.3发布。

2002年2月26日,J2SE1.4发布。自此Java的计算能力有了大幅提升,与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),代号为“Tiger”,Tiger包含了从1996年发布1.0版本以来的最重大的更新,其中包括泛型支持、基本类型的自动装箱、改进的循环、枚举类型、格式化I/O及可变参数。

2005年6月,在Java One大会上,Sun公司发布了Java SE 6。此时,Java的各种版本已经更名,已取消其中的数字2,如J2EE更名为JavaEE,J2SE更名为JavaSE,J2ME更名为JavaME但也还是有很大一部分人因为习惯原因依旧称呼其为J2EE,J2SE,J2ME,不同的叫法同样的事物。

2006年11月13日,Java技术的发明者Sun公司宣布,将Java技术作为免费软件对外发布。Sun公司正式发布的有关Java平台标准版的第一批源代码,以及Java迷你版的可执行源代码。从2007年3月起,全世界所有的开发人员均可对Java源代码进行修改.

2009年,甲骨文公司宣布收购Sun公司。2010年,Java编程语言的共同创始人之一詹姆斯·高斯林从Oracle公司辞职。2011年,甲骨文公司举行了全球性的活动,以庆祝Java7的推出,随后Java7正式发布。

2014年,甲骨文公司发布了Java8正式版

以上Java的发展史主要摘自百度百科,偷个懒粘贴比打字省劲还快,嘿嘿

让我们继续了解Java.

ava语言的特点:跨平台(可移植性强)、简单性、安全、健壮、完全面向对象

JVM(Java VIRTUAL MACHINE):Java虚拟机

JVM是一种规范。就是一个虚拟的用于执行bytecodes字节码的计算机。

Java虚拟机是Java最核心技术,也是跨平台的基础。

那么Java是如何实现跨平台的呢?

第一步 通过“编译器”将Java源程序编译成Java 字节码文件(.class)(字节码文件采用结构中立的中间文件格式)

第二部通过“解释器”将Java字节码文件解释为对应机器语言并运行.

下图是一个简单的Java运行步骤的示意图

C语言与Java的跨平台原理比较:

Java是一次编译到处执行(都是在Java虚拟机上运行的)

C语言多次编译才能到处执行(针对不同的操作系统需要编译器进行编译)

如何开始使用Java进行开发呢

1.搭建Java开发环境(安装JDK,配置环境变量),方法参照我的上一篇博客.

2.编写Java源程序(Test.java)Java源程序的文件必须与public修饰的类名一致,一个Java源文件可以包含多个类,但是只能有一个public修饰的类.

示例:

public class Test {//Test是类名,public修饰的类名必须与文件名相同,Java严格区分大小写.
   public static void main(String[]  args ) {
       System.out.println ("Hello\tWorld!");//打印输出括号内的内容并换行
       System.out.print ("Hello World Again\t \n!");//\t是一种转义符,效果和输出一定个数的空格相同,\n的作用是换行,print不加ln是不会换行的
    System.out.print("Hello World Again!");
   }
}

3. 编译Java源程序--à生成一个字节码文件(.class)具体方法是:打开Dos窗口(win+R-à输入cmd)---à将所在目录更改到源文件所在的目录--à输入javac Test.java进行编译

更改目录的Dos命令:1.输入所在磁盘的盘符如(F:)2.如果就在根目录放着的话直接编译就行,否则就切换完根目录后输入cd加空格加上文件名然后回车就行如(cd javacode)具体的方法可以百度或者谷歌..

4.编译完以后如果没报错的话运行字节码文件(Test.class)java Test(运行时java命令后跟的类名)

注意:编译时是输入javac空格加上完整的文件名Test.java,而运行时输入的是java空格加上类名Test,别再加.java了

学习之前一定要记得Java中的编码规范:代码的缩进一定要整齐有序,命名时要做到见名知意,命名时尽量使用驼峰命名法(即多个单词时首字母大写).

Java中的注释和C语言的大致相同就不详细描述了, //单行注释  /*多行注释*/   /**文档注释*/

最后说一下Java中JDK和JRE的区别,JDK是 Java 语言的软件开发工具包,JDK是整个java开发的核心,它包含了JAVA的运行环境(JRE),JAVA工具和JAVA基础的类库。没有JDK的话,无法编译Java程序,如果想只运行Java程序,要确保已安装相应的JRE。

JRE(Java Runtime Environment,Java运行环境),运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库。如果只是运行Java程序的话只安装JRE就行.

下面一张图应该能很清楚的描述它们之间的关系

时间: 2024-10-21 17:54:43

Java学习记录第一章的相关文章

java学习记录(2):JMenuBar

1.在用这个时候发现很多的组件都有J的前缀,例如Button和JButton,前者是awt包的,后者是swing包的,两者耳朵区别是: AWT 是Abstract Window ToolKit (抽象窗口工具包)的缩写,这个工具包提供了一套与本地图形界面进行交互的接口.AWT 中的图形函数与操作系统所提供的图形函数之间有着一一对应的关系,我们把它称为peers. 也就是说,当我们利用 AWT 来构件图形用户界面的时候,我们实际上是在利用操作系统所提供的图形库.由于不同操作系统的图形库所提供的功能

java学习记录(4):ActionListener

1.ActionListener是处理被点击的事件的. 除了像之前每个元素都独立写一个listener之外,还可以统一用一个 s.setActionCommand("sec"); m.setActionCommand("min"); s.addActionListener(new SetHandler()); m.addActionListener(new SetHandler()); private final class SetHandler implement

java学习日记第一天

java 学习日记 第一天 java学习准备工作 首先环境配置:一个是jdk安装,另一个编译工具 eclipse ,安装下载教程网上很多 找了一个照着做就行 : 上述步骤完成,我们就可以打开eclipse进行我们第一个程序的编写啦当然是编写我们熟悉的helloWorld创建一个Java Perfect 目前好像基本都习惯用工程管理我们就建一个java工程然后点开工程在src右键new一个class,不用问这是啥这是啥,先把程序跑起来,慢慢就懂了我们在{}写我们的程序,这就好比helloworld

java学习记录(1):layout

BorderLayout布局管理器:BorderLayout 也是一种非常简单的布局策略,它把容器内的空间简单地划分为:North,South,East,West和Center 5个区域,每加入一个组件都应该指明把这个组件加在哪个区域中.BorderLayout是顶层容器(Window,Frame, Dialog)的默认布局管理器. BorderLayout界面最多只能显示5个控件,若在一个区域中加上多个component,则只有最后加上的那个是可见的.加入控件的时候,可以指定加入的方位,默认的

JavaScript学习笔记(第一章——第三章)

说明 参考资料:<JavaScript高级程序设计(第3版)> 笔记主要为<JavaScript高级程序设计(第3版)>读书记录,按照此书的章节学习记录.方便以后查询复习(PS:正版书99大洋,没舍得买.在淘宝46买了一本盗版的并带一本 <JavaScript DOM编程艺术(第2版)>).两本书同时阅读,但以<JavaScript高级程序设计(第3版)>为主要学习路线.重要说明性内容将以近似书中原文摘出(以免出现个人解释歧义),外加自己遇到特殊情况说明(不

数据库系统概论学习笔记-第一章绪论

数据库系统概论-第一章绪论 写在前面:寒假来临,除却走亲戚和同学聚餐,王者荣耀等游戏上分花销一点时间之外,自认为要花一点时间学习数据库和Android,以此来为下学期和共建项目打下一丢丢的基础.为了鞭策自己,定了一个小目标( 一个亿),每个两至三天我会发表一篇数据库或Android学习笔记.还是那句话你的才华撑不住你的野心时,那就静下来学习吧 . 数据库系统概述 数据库常用的术语和基本概念 数据库基本概念 数据(Data) 数据是数据库中存储的基本对象,可以对数据做如下定义:描述事物的符号记录称

K&amp;R 学习笔记 第一章

今天开始学习C语言,为了之后的游戏开发学习做好基础,其实在大一的时候学校有C语言的课程,学的马马虎虎,教学也比较浅显,感觉并不能学习到C语言的精髓.在经过多人推荐下,入手了K&R ,看了第一章之后,才发现的确值得这么多人称赞. 其实大多数书的第一章都是差不多的,以Hello World 引出本书学习的知识体系的顺序,有趣的是之后的练习,也是要花一番功夫的. 1.4 提到了幻数,所谓幻数,就是在程序中直接使用的数字.C语言的传统方式是使用#define行来对付幻数.C语言预处理程序是一个强有力的工

java学习笔记[前四章]

一    :Java 发展简史 1. Java 是一种语言,具有自己的语法和数据结构 2. Java 来自于 sun ,sun 指的是斯坦福大学网络 3. 具体发展历程 Java的具体发展历程 时间 描述 1991~1995 Sun 为了占领智能消费电子产品市场,由james gosling 负责该项目,来开发 Oak(橡树) 语言 1995 将 Oak 改名为 Java,当时也是window95版本的发布 1996 发布 JDK1.0 1997 发布 JDK1.1 1998 发布 JDK1.2

&lt;java编程思想&gt;第一章读书笔记二

7.伴随多态的可互换对象 前面说了继承,我们知道继承中存在基类(父类)以及导出类(子类),不知道大家有没有遇到过这种情况?就是在向一个方法中传递一个对象作为参数时,我们往往会选择传递一个基类而不是一个子类,为什么要这么做呢?其实原因也很简单,说的高大上一点就是这样做有利于代码的健壮性和可扩展性,说的详细还是有利于代码的健壮性和可扩展性,更重要的也就是可扩展性. 还拿喝可乐的例子来说,如果你传递的参数对象是可乐,那么不管你是给我百事可乐还是可口可乐我都可以接受啊,但是如果你传递的参数仅仅是百事可乐