java自学笔记1

上传人:hy****d 文档编号:242879450 上传时间:2024-09-10 格式:PPTX 页数:39 大小:190.16KB
返回 下载 相关 举报
java自学笔记1_第1页
第1页 / 共39页
java自学笔记1_第2页
第2页 / 共39页
java自学笔记1_第3页
第3页 / 共39页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2013/12/3,#,CZYJ,第,1,部分,Java,基础程序设计,Java,语言介绍,Java,Java,中的变量与数据类型,运算符、表达式与语句,循环与选择结构,数组与方法的使用,1,第,1,章 认识,Java,1.1 Java,的历史,Java,来自于,Sun,公司的一个叫,Green,的项目,其原先的目的是为家用电子消费产品开发一个分布式代码系统,这样就可以把,E-mail,发给电冰箱、电视机等家用电器,对它们进行控制,和它们进行信息交流。开始他们准备采用,C+,,但,C+,太复杂,安全性差,最后基于,C+,开发一种新语言,Oak,(,Java,的前身)。,Oak,是一种用于网络的精巧而安全的语言,,Sun,公司曾以此投标一个交互式电视项目,但结果被,SGI,打败。于是,Oak,几乎无家可归,恰巧这时,Mark Ardreesen,开发的,Mosaic,和,Netscape,启发了,Oak,项目组成员,他们用,Java,编制了,HotJava,浏览器,得到了,Sun,公司首席执行官,Scott McNealy,的支持,触发了,Java,进军,Internet,。,Java,技术是由美国,Sun,公司倡导和推出的,它包括,Java,语言和,Java Media APIS,、,Security APIs,、,Management APIs,、,Java Applet,、,Java RMI,、,JavaBean,、,JavaOS,、,Java Servlet,、,JavaServer Page,以及,JDBC,等。,2,现把,Java,技术的发展历程简述如下:,1990,年,,Sun,公司,James Gosling,领导的小组设计了一种平台独立的语言,Oak,,主要用于为各种家用电器编写程序。,1995,年,1,月,,Oak,被改名为,Java,;,1995,年,5,月,23,日,,Sun,公司在,Sun World 95,上正式发布,Java,和,HotJava,浏览器。,1995,年,8,月至,12,月,,Netscape,公司、,Oracle,公司、,Borland,公司、,SGI,公司、,Adobe,公司、,IBM,公司、,AT&T,公司、,Intel,公司获得,Java,许可证。,1996,年,1,月,,Sun,公司宣布成立新的业务部门,JavaSoft,部,以开发、销售并支持基于,Java,技术的产品,由,Alan Baratz,任总裁。同时推出,Java,开发工具包,JDK,(,Java Development Kit,),1.0,,为开发人员提供用来编制,Java,应用软件所需的工具。, 1996,年,2,月,,Sun,公司发布,Java,芯片系列,包括,PicoJava,、,MicroJava,和,UltraJava,,并推出,Java,数据库连接,JDBC,(,Java Database Connectivity,)。,1996,年,3,月,,Sun,公司推出,Java WorkShop,。,3,1996,年,4,月,,Microsoft,公司、,SCO,公司、苹果电脑公司(,Apple,)、,NEC,公司等获得,Java,许可证。,Sun,公司宣布允许苹果电脑、,HP,、日立、,IBM,、,Microsoft,、,Novell,、,SGI,、,SCO,、,Tamdem,等公司将,Java,平台嵌入到其操作系统中。,1996,年,5,月,,HP,公司、,Sybase,公司获得,Java,许可证。北方电讯公司宣布把,Java,技术和,Java,微处理器应用到其下一代电话机中的计划。,5,月,29,日,,Sun,公司在旧金山举行第一届,JavaOne,世界,Java,开发者大会,业界人士踊跃参加。,Sun,公司在大会上推出一系列,Java,平台新技术。,1996,年,8,月,,JavaWorkShop,成为,Sun,公司通过互联网提供的第一个产品。,1996,年,9,月,,Addison-Wesley,和,Sun,公司推出,Java,虚拟机规范和,Java,类库。,1996,年,10,月,德州仪器等公司获得,Java,许可证。,Sun,公司提前完成,JavaBean,规范并发布,同时发布第一个,Java JIT,(,Just-In-Time,)编译器,并打算在,Java WorkShop,和,Solaris,操作系统中加入,JIT,。,10,月,29,日,,Sun,公司发布,Java,企业计算技术,包括,JavaStation,网络计算机、,65,家公司发布的,85,个,Java,产品及应用、,7,个新的,Java,培训课程及,Java,咨询服务、基于,Java,的,Solstice,互联网邮件软件、新的,Java,开发者支持服务、,HotJava Views,演示、,Java Tutor,、,Java Card API,等。,Sun,公司宣布完成,Java Card API,规范,这是智能卡使用的第一个开放,API,。,Java Card,规范将把,Java,能力赋予全世界亿万张智能卡。,1996,年,11,月,,IBM,公司获得,JavaOS,和,HotJava,许可证。,Novell,公司获得,Java WorkShop,许可证。,Sun,公司和,IBM,公司宣布双方就提供,Java,化的商业解决方案达成一项广泛协议,,IBM,公司同意建立第一个,Java,检验中心。, 1996,年,12,月,,Xerox,等公司获得,Java,或,JavaOS,许可证。,Sun,公司发布,JDK1.1,、,Java,商贸工具包、,JavaBean,开发包及一系列,Java APIs,;推出一个新的,JavaServer,产品系列,其中包括,Java Web Server,、,Java NC Server,和,JavaServer Toolkit,。,Sun,公司发布,100%,纯,Java,计划,得到百家公司的支持。,4,1997,年,1,月,,SAS,等公司获得,Java,许可证。,Sun,公司交付完善的,JavaBean,开发包,这是在确定其规范后不到,8,个月内完成的。,1997,年,2,月,,Sun,公司和,ARM,公司宣布同意使,JavaOS,运行在,ARM,公司的,RISC,处理器架构上。,Informix,公司宣布在其,Universal Server,和其他数据库产品上支持,JDK1.1,。,Netscape,公司宣布其,Netscape Communicator,支持所有,Java,化的应用软件和核心,API,。,1997,年,3,月,,HP,公司获得,Java WorkShop,许可证,用于其,HP-UX,操作系统。西门子、,AG,公司等获得,Java,许可证。日立半导体公司、,Informix,公司等获得,JavaOS,许可证。,Novell,公司获得,Java Studio,许可证。,Sun,公司发售的,JavaOS 1.0,操作系统,这是一种在微处理器上运行,Java,环境的最小、最快的方法,可提供给,JavaOS,许可证持有者使用。,Sun,公司发售,HotJava Browser 1.0,,这是一种,Java,浏览器,可以方便地按需编制专用的信息应用软件,如客户自助台和打上公司牌号的网络应用软件。,1996,年,6,月,,Sun,公司发布,JSP1.0,,同时推出,JDK1.3,和,Java Web Server 2.0,。,1999,年,11,月,,Sun,公司发布,JSP1.1,,同时推出,JSWDK1.0.1,和,Java Servlet 2.2,。,2000,年,9,月,,Sun,公司发布,JSP1.2,和,Java Servlet 2.3 API,。,5,1.2 Java,的现状,Java,是,Sun,公司推出的新一代面向对象程序设计语言,特别适于,Internet,应用程序开发,它的平台无关性直接威胁到,Wintel,的垄断地位,这表现在以下几个方面:,计算机产业的许多大公司购买了,Java,许可证,包括,IBM,、,Apple,、,DEC,、,Adobe,、,SiliconGraphics,、,HP,、,Oracle,、,TOSHIBA,以及,Microsoft,。这一点说明,,Java,已得到了业界的认可。,众多的软件开发商开始支持,Java,软件产品。例如,Inprise,公司的,JBuilder,、,Sun,公司自己做的,Java,开发环境,JDK,与,JRE,。,Sysbase,公司和,Oracle,公司均已支持,HTML,和,Java,。, Intranet,正在成为企业信息系统最佳的解决方案,而其中,Java,将发挥不可替代的作用。,Intranet,的目的是将,Internet,用于企业内部的信息类型,它的优点是便宜、易于使用和管理。用户不管使用何种类型的机器和操作系统,界面是统一的,Internet,浏览器,而数据库、,Web,页面、,Applet,、,Servlet,、,JSP,则存储在,Web,服务器上,无论是开发人员还是管理人员,或是用户都可以受益于该解决方案。,6,1.3 Java,的特点,1.3.1 Java,语言的优点,Java,语言是一种优秀的编程语言。它最大的优点就是与平台无关,在,Windows 9x,、,Windows NT,、,Solaris,、,Linux,、,MacOS,以及其它平台上,都可以使用相同的代码。“一次编写,到处运行”的特点,使其在互联网上被广泛采用。,由于,Java,语言的设计者们十分熟悉,C+,语言,所以在设计时很好地借鉴了,C+,语言。可以说,,Java,语言是一种比,C+,语言“还面向对象”的一种编程语言。,Java,语言的语法结构与,C+,语言的语法结构十分相似,这使得,C+,程序员学习,Java,语言更加容易。,当然,如果仅仅是对,C+,改头换面,那么就不会有今天的,Java,热了。,Java,语言提供的一些有用的新特性,使得使用,Java,语言比,C+,语言更容易写出“无错代码”。,7,这些新特性包括:,1,、提供了对内存的自动管理,程序员无需在程序中进行分配、释放内存,那些可怕的内存分配错误不会再打扰设计者了;,2,、去除了,C+,语言中的令人费解、容易出错的“指针”,用其它方法来进行弥补;,3,、避免了赋值语句(如,a = 3,)与逻辑运算语句(如,a = = 3,)的混淆;,4,、取消了多重继承这一复杂的概念。,Java,语言的规范是公开的,可以在上找到它,阅读,Java,语言的规范是提高技术水平的好方法。,8,1.3.2 Java,语言的关键特性,Java,语言有许多有效的特性,吸引着程序员们。,最主要的有以下这些:,9,1.,简洁有效,Java,语言是一种相当简洁的“面向对象”程序设计语言。,Java,语言省略了,C+,语言中所有的难以理解、容易混淆的特性,例如头文件、指针、结构、单元、运算符重载、虚拟基础类等。它更加严谨、简洁。,10,2.,可移植性,对于一个程序员而言,写出来的程序如果不需修改就能够同时在,Windows,、,MacOS,、,UNIX,等平台上运行,简直就是美梦成真的好事!而,Java,语言就让这个原本遥不可及的事已经越来越近了。使用,Java,语言编写的程序,只要做较少的修改,甚至有时根本不需修改就可以在不同平台上运行了。,11,3.,面向对象,可以这么说,“面向对象”是软件工程学的一次革命,大大提升了人类的软件开发能力,是一个伟大的进步,是软件发展的一个重大的里程碑。,在过去的,30,年间,“面向对象”有了长足的发展,充分体现了其自身的价值,到现在已经形成了一个包含了“面向对象的系统分析”、“面向对象的系统设计”、“面向对象的程序设计”的完整体系。所以作为一种现代编程语言,是不能够偏离这一方向的,,Java,语言也不例外。,12,4.,解释型,Java,语言是一种解释型语言,相对于,C/C+,语言来说,用,Java,语言写出来的程序效率低,执行速度慢。但它正是通过在不同平台上运行,Java,解释器,对,Java,代码进行解释,来实现“一次编写,到处运行”的宏伟目标的。为了达到目标,牺牲效率还是值得的,况且,现在的计算机技术日新月异,运算速度也越来越快,用户是不会感到太慢的。,13,5.,适合分布式计算,Java,语言具有强大的、易于使用的联网能力,非常适合开发分布式计算的程序。,Java,应用程序可以像访问本地文件系统那样通过,URL,访问远程对象。,使用,Java,语言编写,Socket,通信程序十分简单,使用它比使用任何其它语言都简单。而且它还十分适用于公共网关接口(,CGI,)脚本的开发,另外还可以使用,Java,小应用程序(,Applet,)、,Java,服务器页面(,Java Server Page,,简称,JSP,)、,Servlet,等等手段来构建更丰富的网页。,14,6.,拥有较好的性能,正如前面所述,由于,Java,是一种解释型语言,所以它的执行效率相对就会慢一些,但由于,Java,语言采用了两种手段,使得其性能还是不错的。,A,、,Java,语言源程序编写完成后,先使用,Java,伪编译器进行伪编译,将其转换为中间码(也称为字节码),再解释;,B,、提供了一种“准实时”(,Just-in-Time,,,JIT,)编译器,当需要更快的速度时,可以使用,JIT,编译器将字节码转换成机器码,然后将其缓冲下来,这样速度就会更快。,15,7.,健壮、防患于未然,Java,语言在伪编译时,做了许多早期潜在问题的检查,并且在运行时又做了一些相应的检查,可以说是一种最严格的“编译器”。,它的这种“防患于未然”的手段将许多程序中的错误扼杀在摇蓝之中。经常有许多在其它语言中必须通过运行才会暴露出来的错误,在编译阶段就被发现了。,另外,在,Java,语言中还具备了许多保证程序稳定、健壮的特性,有效地减少了错误,这样使得,Java,应用程序更加健壮。,16,8.,具有多线程处理能力,线程,是一种轻量级进程,是现代程序设计中必不可少的一种特性。多线程处理能力使得程序能够具有更好的交互性、实时性。,Java,在多线程处理方面性能超群,具有让设计者惊喜的强大功能,而且在,Java,语言中进行多线程处理很简单。,17,9.,具有较高的安全性,由于,Java,语言在设计时,在安全性方面考虑很仔细,做了许多探究,使得,Java,语言成为目前最安全的一种程序设计语言。,尽管,Sun,公司曾经许诺过:“通过,Java,可以轻松构建出防病毒、防黑客的系统”,但“世界上没有绝对的安全”这一真理是不会因为某人的许诺而失灵验的。,就在,JDK (Java Development Kit)1.0,发布不久后,美国,Princeton,(普林斯顿)大学的一组安全专家发现了,Java 1.0,安全特性中的第一例错误。从此,,Java,安全方面的问题开始被关注。不过至今所发现的安全隐患都很微不足道,而且,Java,开发组还宣称,他们对系统安全方面的,Bugs,非常重视,会对这些被发现的,Bugs,立即进行修复。,而且由于,Sun,公司开放了,Java,解释器的细节,所以有助于通过各界力量,共同发现、防范、制止这些安全隐患。,18,10.,是一种动态语言,Java,是一种动态的语言,这表现在以下两个方面:,A,、在,Java,语言中,可以简单、直观地查询运行时的信息;,B,、可以将新代码加入到一个正在运行的程序中去。,19,11.,是一种中性结构,“,Java,编译器生成的是一种中性的对象文件格式。”也就是说,,Java,编译器通过伪编译后,将生成一个与任何计算机体系统无关的“中性”的字节码。,这种中性结构其实并不是,Java,首创的,在,Java,出现之前,UCSD Pascal,系统就已在一种商业产品中做到了这一点,另外在,UCSD Pascal,之前也有这种方式的先例,在,Niklaus Wirth,实现的,Pascal,语言中就采用了这种降低一些性能,换取更好的可移植性和通用性的方法。,Java,的这种字节码经过了许多精心的设计,使得其能够很好地兼容于当今大多数流行的计算机系统,在任何机器上都易于解释,易于动态翻译成为机器代码。,20,1.4 Java,虚拟机,(JVM),Java,虚拟机,(JVM),是可运行,Java,代码的假想计算机。只要根据,JVM,规范描述将解释器移植到特定的计算机上,就能保证经过编译的任何,Java,代码能够在该系统上运行。,如图,1-1,所示:,21,图,1-1 Java,虚拟机,22,从图,1-1,中不难明白,JAVA,可以实现可移植性的原因,只要在操作系统上(,WINNT,、,Linux,、,Unix,)植入,JVM,(,Java,虚拟机),,JAVA,程序就具有可移植性,也符合,SUN,公司提出的口号“,Write Once, Run Anywhere”,(“一次编写,处处运行”)。,23,目前,,Java,技术的架构包括以下三个方面:,J2EE (Java 2 Platform Enterprise Edition),企业版,是以企业为环境而开发应用程序的解决方案。,J2SE (Java 2 Platform Stand Edition),标准版,是桌面开发和低端商务应用的解决方案。,J2ME (Java 2 Platform Micro Edition),小型版,是致力于消费产品和嵌入式设备的最佳解决方案。,24,1.5 JDK,的安装及环境变量的配置,要开发,Java,程序首先必须要配置好环境变量,而,Java,的运行环境的配置比较麻烦,相信有些读者也会有这种体会,下面来看一下,JDK,的安装过程。在这里,JDK,选用的是,J2SDK1.4.2,版本。安装分为两个步骤:,1,、首先要准备好,JDK,的安装文件:,j2sdk-1_4_0_03-windows-i586 ;,2,、配置环境变量,path,。,先来看一下步骤一的安装过程:,25,图,1-2,启动,JDK,安装程序,26,图,1-3,将安装路径设置为,c:j2sdk,27,之后走默认的安装设置即可。,从图,1-1,可以看出,在编译,Java,程序时需要用到,Javac,这个命令,执行,Java,程序需要,java,这个命令,而这两个命令并不是,windows,自带的命令,所以使用它们的时候需要配置好环境变量,这样就可以在任何的目录下使用这两个命令了。,那么该如何设置环境变量呢?,在我的电脑上点击右键,选择属性,选择高级,环境变量,path,。,28,图,1-4,系统环境变量的配置,29,在,path,后面加上,c:j2sdkbin;,c:j2sdk,是安装,JDK,的路径,如果记不清楚了,可回去看一下图,1-3,。,注意:,在这里使用的是,windows 2000,操作系统,至于其他的操作系统,如,windows98,在设置环境变量的时与,windows2000,的配置有许多不同,如果读者感兴趣,可以去查阅其他的资料。,30,图,1-5,添加环境变量,这样就可以在任何目录下使用,javac,和,java,这两个命令了。,31,1.6,编写第一个,Java,程序,说了这么多,现在就自己来动手编写一个,Java,的程序来亲自感受一下,Java,语言的基本形式。需要说明的是,,JAVA,程序分为两种形式:一种是网页上使用的,Applet,程序(,Java,小程序),另一种是,Appliction,程序(即:,Java,应用程序),本书主要讲解的是,Java Application,程序。,32,范例:,Hello.java,01 public class Hello,02 ,03 /,是程序的起点,所有程序由此开始运行,04 public static void main(String args),05 ,06 /,此语句表示向屏幕上打印,Hello World !,字符串,07 System.out.println(Hello World !);,08 ,09 ,将上面的程序保存为,HelloCareers.java,文件,并在命令行中输入,javac Hello.java,,没有错误后输入,java Hello,。,输出结果:,Hello World!,33,程序说明:,在所有的,Java Application,中,所有程序都是从,public static void main(String args),,开始运行的,刚接触的读者可能会觉得有些难记,在后面的章节中会详细给读者讲解,main,方法的各个组成部分。,上面的程序如果暂时不明白也没有关系,读者只要将程序一点一点都敲下来,之后按照步骤编译、执行,就可以了,在这里只是让读者对,Java Application,程序有一个初步印象,因为以后所有的内容讲解的都将围绕,Java Application,程序进行。,34,1.7 classpath,的指定,在,java,中可以使用,set classpath,命令指定,java,类的执行路径。下面通过一个实验来了解,classpath,的作用,假设这里的,Hello.class,类位于,c:,盘下。,第,14,页,在,D,盘下的命令行窗口执行下面的指令:,set classpath=c:,之后在,D,盘根目录下执行:,java Hello,,如下图所示:,35,图,1-6,36,由上面的输出结果可以发现,虽然在,D,盘中并没有,Hello.class,文件,但是却也可以用,java Hello,执行,Hello.class,文件,之所以会有这种结果,就是因为在,D,盘中使用,set classpath,命令,将类的查找路径指向了,C,盘,所以在运行时,会从,C,盘下开始查找。,37,小提示:,可能有些读者在按照上述的方法操作时,发现并不好用,这里要告诉读者的是,在设置,classpath,时,最好将,classpath,指向当前目录,即:所有的,class,文件都从当前文件夹中开始查找:,set classpath=.,38,本章摘要:,1,、,Java,程序比较特殊,它必须先经过编译,然后再利用解释的方式来运行。,2,、,Byte-codes,最大的好处是,可越平台运行,可让“一次编写,处处运行”成为可能。,3,、使用,classpath,可以指定,class,的运行路径。,39,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!