您好,欢迎访问三七文档
第一章:教案名称:教案大小:教案类型:WORD文档星级评定:★★★★☆教案简介:java语言的产生起源于SunMicrosystems公司为消费电子产品上应用程序的开发寻找一门编程语言的过程中,而随着互联网时代的到来,原有的Oak软件就顺理成章的改造成java语言推向了市场,其跨平台、面相对象、安全等特点使其得到广泛的应用。通过在不同的软硬件上实现的java虚拟机,java的字节码文件就可以跨平台的进行运行,无用内存自动回收器也给程序员带来了极大的方便。java程序以两种方式进行运行,一种是通过java虚拟机进行直接运行的javaapplication,另一种是通过浏览器进行运行的javaapplet,但是无论是何种方式,java都是一门纯粹的面向对象的编程语言。面向对象编程的思路认为程序都是对象的组合,因此要克服面向过程编程的思路,直接按照对象和类的思想去组织程序,面向对象所具有的封装性、继承性、多态性等特点使其具有强大的生命力。Sun公司为全世界java开发人员提供了一套免费的软件开发包Java2SDK,也称为JDK,它不仅是java的开发平台,还是java的运行平台。java源程序存放在.java文件中,可以通过任意一个文本编辑器编辑产生,源程序经过javac命令编译过后,就生成了相应的.class文件,而用java命令就可以运行.class文件。作为面向对象编程人员来说,大体可以分为两种:类创建者和应用程序员,应用程序员是类的使用者。所以对程序的可读性和API帮助文档就有要求,java语言本身有一套约定成俗的编程规范,同时程序员首先要学会阅读系统API帮助文档,还要学会生成自己编写的程序的API帮助文档。下载一【课前思考】1.一门新的语言的产生是否需要借鉴以前的编程语言?2.在java语言出现之前是否存在其它跨平台的语言?3.有哪些编程语言是面向对象的?而哪些编程语言是面向过程的?从编程思路上存在着哪些本质差别?C++语言是面向对象的还是面向过程的?4.一段优秀的程序代码是否应该是可读性极强的?程序员之间是否应该遵循相同的编程规范?5.一个程序员编好的代码如果需要让别的程序员使用,如何提供该代码的使用说明?【学习目标】了解java语言产生的历史和工作原理,掌握java语言作为一门面向对象编程语言的基本编程思路,初步接触java程序的两种方式:javaapplication和javaapplet,掌握java程序的结构、编程规范,学习阅读java帮助文档,并安装java开发环境和帮助文档,最后要学会编写小的java程序并生成相应的帮助文档。【学习指南】跳过面向过程的编程思路,直接进入到面向对象的编程方式。【难重点】java虚拟机无用内存自动回收器java语言的特点面向对象的编程思路java编程规范java类库帮助文档的浏览和生成【知识点】1.1java语言的发展史1.1.1java语言在互联网时代获得巨大成功1.1.2java语言的产生1.2java的工作原理1.2.1java虚拟机1.2.2无用内存自动回收机制1.2.3代码安全性检查机制1.2.4java语言的特点1.2.5java平台-不断扩展的计算平台1.3一切都是对象1.3.1面向过程1.3.2面向对象1.4构建java程序1.4.1第一个javaapplication1.4.2java程序的编辑1.4.3java程序的编译1.4.4javaapplication的执行1.4.5第一个javaapplet1.4.6javaapplet的执行1.5java程序规范1.5.1java源程序结构1.5.2java编程规范1.5.3java帮助文档1.5.4java注释1.6建立java开发环境1.6.1安装java开发包JDK1.6.2安装java帮助文档1.6.3配置类路径1.1java语言的发展史1.1.1java语言在互联网时代获得巨大成功大家想一想,在PC下用windows编写的程序能够不做修改就直接拿到UNIX系统上运行吗?显然是不可以的,因为程序的执行最终必须转换成为计算机硬件的机器指令来执行,专门为某种计算机硬件和操作系统编写的程序是不能够直接放到另外的计算机硬件上执行的,至少要做移植工作。要想让程序能够在不同的计算机上能够运行,就要求程序设计语言是能够跨越各种软件和硬件平台的,而java满足了这一需求。1995年,美国SunMicrosystems公司正式向IT业界推出了java语言,该语言具有安全、跨平台、面向对象、简单、适用于网络等显著特点,当时以web为主要形式的互联网正在迅猛发展,java语言的出现迅速引起所有程序员和软件公司的极大关注,程序员们纷纷尝试用java语言编写网络应用程序,并利用网络把程序发布到世界各地进行运行。包括IBM、Oracle、微软、Netscape、Apple、SGI等大公司纷纷与SunMicrosystems公司签订合同,授权使用java平台技术。微软公司总裁比尔盖茨先生在经过研究后认为java语言是长时间以来最卓越的程序设计语言。目前,java语言已经成为最流行的网络编程语言,截止到2001年中,全世界大约有310万java程序员,许多大学纷纷开设java课程,java正逐步成为世界上程序员最多的编程语言。在经历了以大型机为代表的集中计算模式和以PC机为代表的分散计算模式之后,互联网的出现使得计算模式进入了网络计算时代。网络计算模式的一个特点是计算机是异构的,即计算机的类型和操作系统是不一样的,例如SUN工作站的硬件是SPARC体系,软件是UNIX中的Solaris操作系统,而PC机的硬件是INTEL体系,操作系统是windows或者是Linux,因此相应的编程语言基本上只是适用于单机系统,例如COBOL、FORTRAN、C、C++等等;网络计算模式的另一个特点是代码可以通过网络在各种计算机上进行迁移,这就迫切需要一种跨平台的编程语言,使得用它编写的程序能够在网络中的各种计算机上能够正常运行,java就是在这种需求下应运而生的。正是因为java语言符合了互联网时代的发展要求,才使它获得了巨大的成功。1.1.2java语言的产生俗话说:有心栽花花不成,无心插柳柳成荫。Sun公司绝没想到本想用于消费电子产品开发的编程语言却率先在网络中得到了广泛应用,但是也可以说是东方不亮西方亮,正是因为java语言在设计目标上的正确性使得java语言是金字总会发光的。C语言是面向过程的语言,也是使用率非常高的语言;而面向对象的思想引入到编程语言之后,C语言就被改造成为面向对象的C++语言,得到了广泛的应用。但是C++语言必须兼容C语言,因此C++语言是面向过程和面向对象混合的语言。java语言产生于C++语言之后,是完全的面向对象的编程语言,充分吸取了C++语言的优点,采用了程序员所熟悉的C和C++语言的许多语法,同时又去掉了C语言中指针、内存申请和释放等影响程序健壮性的部分,可以说java语言是站在C++语言这个巨人的肩膀上前进的。java语言的一个目标是跨平台,因此采用了解释执行而不是编译执行的运行环境,在执行过程中根据所在的不同的硬件平台把程序解释为当前的机器码,实现跨平台运行。而动态下载程序代码的机制完全是为了适应网络计算的特点,程序可以根据需要把代码实时的从服务器中下载过来执行,在此之前还没有任何一种语言能够支持这一点。java是印尼的一个小岛,盛产咖啡,而程序员往往喜欢喝咖啡,因此取名为java语言。看来,目前java这杯咖啡已经飘香在世界各地。任何事物的产生既有必然的原因也有偶然的因素,java语言的出现也验证了这一点。1991年,美国SunMicrosystems公司的某个研究小组为了能够在消费电子产品上开发应用程序,积极寻找合适的编程语言。消费电子产品种类繁多,包括PDA、机顶盒、手机等等,即使是同一类消费电子产品所采用的处理芯片和操作系统也不相同,也存在着跨平台的问题。当时最流行的编程语言是C和C++语言,Sun公司的研究人员就考虑是否可以采用C++语言来编写消费电子产品的应用程序,但是研究表明,对于消费电子产品而言C++语言过于复杂和庞大,并不适用,安全性也并不令人满意。于是,BillJoy先生领导的研究小组就着手设计和开发出一种语言,称之为Oak。该语言采用了许多C语言的语法,提高了安全性,并且是面向对象的语言,但是Oak语言在商业上并未获得成功。时间转到了1995年,互联网在世界上蓬勃发展,Sun公司发现Oak语言所具有的跨平台、面向对象、安全性高等特点非常符合互联网的需要,于是改进了该语言的设计,要达到如下几个目标:◇创建一种面向对象的程序设计语言,而不是面向过程的语言;◇提供一个解释执行的程序运行环境,是程序代码独立于平台;◇吸收C和C++的优点,使程序员容易掌握;◇去掉C和C++中影响程序健壮性的部分,使程序更安全,例如指针、内存申请和释放;◇实现多线程,使得程序能够同时执行多个任务;◇提供动态下载程序代码的机制;◇提供代码校验机制以保证安全性;最终,Sun公司给该语言取名为java语言,造就了一代成功的编程语言。1.2java的工作原理1.2.1java虚拟机java虚拟机是软件模拟的计算机,可以在任何处理器上(无论是在计算机中还是在其它电子设备中)安全并且兼容的执行保存在.class文件中的字节码。java虚拟机的机器码保存在.class文件中,有时也可以称之为字节码文件。java程序的跨平台主要是指字节码文件可以在任何具有java虚拟机的计算机或者电子设备上运行,java虚拟机中的java解释器负责将字节码文件解释成为特定的机器码进行运行。java源程序需要通过编译器编译成为.class文件(字节码文件),java程序的编译和执行过程如动画所示。但是,java虚拟机的建立需要针对不同的软硬件平台做专门的实现,既要考虑处理器的型号,也要考虑操作系统的种类。如下图所示,目前在SPARC结构、X86结构、MIPS和PPC等嵌入式处理芯片上、在UNIX、Linux、windows和部分实时操作系统上都有java虚拟机的实现。1.2.2无用内存自动回收机制在程序的执行过程中,部分内存在使用过后就处于废弃状态,如果不及时进行无用内存的回收,就会导致内存泄漏,进而导致系统崩溃。在C++语言中是由程序员进行内存回收的,程序员需要在编写程序的时候把不再使用的对象内存释放掉;但是这种人为的管理内存释放的方法却往往由于程序员的疏忽而致使内存无法回收,同时也增加了程序员的工作量。而在java运行环境中,始终存在着一个系统级的线程,专门跟踪内存的使用情况,定期检测出不再使用的内存,并进行自动回收,避免了内存的泄露,也减轻了程序员的工作量。1.2.3代码安全性检查机制安全和方便总是相对矛盾的。java编程语言的出现使得客户端机器可以方便的从网络上下载java程序到本机上运行,但是如何保证该java程序不携带病毒或者不怀有其它险恶目的呢?如果java语言不能保证执行的安全性,那么它就不可能存活到今天。虽然有时候少数程序员会抱怨说applet连文件系统也不能访问,但是正是各种安全措施的实行才确保了java语言的生存。字节码的执行需要经过三个步骤,首先由类装载器(classloader)负责把类文件(.class文件)加载到java虚拟机中,在此过程需要检验该类文件是否符合类文件规范;其次字节码校验器(bytecodeverifier)检查该类文件的代码中是否存在着某些非法操作,例如applet程序中写本机文件系统的操作;如果字节码校验器检验通过,由java解释器负责把该类文件解释成为机器码进行执行。java虚拟机采用的是沙箱运行模式,即把java程序的代码和数据都限制在一定内存空间里执行,不允许程序访问该内存空间外的内存,如果是applet程序,还不允许访问客户端机器的文件系统。1.2.4Java语言的特点1.简单、面向对象和为人所熟悉java的简单首先体现在精简的系统上,力图用最小的系统实现足够多的功能;对硬件
本文标题:第一章java基础
链接地址:https://www.777doc.com/doc-2201892 .html