第01章Java语言概述.ppt

上传人:sccc 文档编号:6614649 上传时间:2023-11-18 格式:PPT 页数:47 大小:1.04MB
返回 下载 相关 举报
第01章Java语言概述.ppt_第1页
第1页 / 共47页
第01章Java语言概述.ppt_第2页
第2页 / 共47页
第01章Java语言概述.ppt_第3页
第3页 / 共47页
第01章Java语言概述.ppt_第4页
第4页 / 共47页
第01章Java语言概述.ppt_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《第01章Java语言概述.ppt》由会员分享,可在线阅读,更多相关《第01章Java语言概述.ppt(47页珍藏版)》请在三一办公上搜索。

1、1,面向对象程序设计(Java),武汉大学国际软件学院 桂浩,2,课程提纲,Java语言概述Java语言语法基础面向对象的特征Applet及其应用图形用户界面设计异常线程集合操作Java输入/输出网络编程,3,参考资料,Java语言程序设计,吕凤翥、马皓编著,清华大学出版社Java编程思想,第2版,候捷译,计算机科学丛书,机械工业出版社The Java Tutorial,a practical guide for programmers,http:/in Java,2nd edition,Revision 11,2000,Bruce Eckel,http:/Thinking in Java,3

2、rd Edition Revision 4.0,Bruce EckelThe Java Language Specification,2nd Edition,James Gosling,Bill Joy,Guy Steele,Gilad Bracha,4,第一章 Java语言概述,Java的发展什么是Java?Java程序介绍Java程序运行环境,5,Java的发展,早期的历史1991年,Sun Microsystems公司建立“the Green Project”(Secretly),13个成员,目的开发消费电子类产品市场(嵌入式设备),初始选择C+语言1992年夏天,*7设备,运行在一种全

3、新的、对立于处理器的语言“Oak”,潜在的市场有线电视Green TeamFirstPerson Team(70人),电视机顶盒/video-on-demand,市场不成熟?James Gosling,Bill Joy,and Eric Schmidt“why not the Internet?在Mosaic浏览器的基础上开发“WebRunner”,“Hollywood-meets-Silicon-Valley”的两个演示(3D动态分子、线排序),6,Java的发展,早期的历史Java面世1995年3月,“1.0a”7/8份二进制拷贝,“1.0a2”源代码公布在Internet下载数量和反馈邮

4、件剧增On May 23,1995,John Gage,director of the Science Office for Sun Microsystems,and Marc Andreessen,cofounder and executive vice president at NetscapeTM,stepped onto a stage and announced to the SunWorld audience that JavaTM technology was real,it was official,and it was going to be incorporated int

5、o Netscape NavigatorTM,the worlds portal to the Internet.,7,Java的发展,历史记录-Who,James Gosling:Green Team original,FirstPerson employee,original member Java Products Group,lead engineer and keyarchitect of Java technology,Bill Joy:Cofounder and vice president,Sun Microsystems,Inc.,principal designer of

6、the University of California,Berkeley,version of the UNIX operating system,Eric Schmidt:Former Sun Microsystems chief technical officer,Former Novell chairman and CEO,Chairman of the Board and CEO,Google Inc.,8,Java的发展,历史记录,*7:A new SPARC based,handheld wireless PDA,with a 5 color LCD with touchscre

7、en input,9,Java的发展,的主页,10,Java的发展,五年回顾(19962000)1995年May 23,Java technology launched 1996年Jan 23,JDK 1.0 software releaseMay 29,first JavaOne developer conference(JavaBeans,Java Media APIs,servlets,etc)July 10,50,000 people attend Sun Java Day in TokyoAug 16,Sun/Addison-Wesley(The Java Tutorial and

8、the first Java Language Specification)Sep,83,000 Web pages have incorporated Java technologyOct 25,Sun announces first Just-In-Time(JIT)compiler for Java platformOct 29,Java Card API announcedDec 9,JDK 1.1 beta software released,11,Java的发展,五年回顾(19962000)1997年Feb 18,JDK 1.1 release shipsMar 4,Java We

9、b Server beta and Java Servlet Developers Kit software releasedMar 10,Java Naming and Directory Interface(JNDI)API introducedMar 11,More than 220,000 downloads of JDK 1.1 software in just three weeksApr 2,JavaOne conference(10,000 attendees,the worlds largest developer conference),Enterprise JavaBea

10、ns technologyAug 5,Java Media and Communication APIs releasedAug 5,More than 100,000 downloads of JavaBeans Development Kit softwareSep 23,Java Developer Connection program has 100,000+members,12,Java的发展,五年回顾(19962000)1998年Jan 20,JDK 1.1 software release downloads top 2 millionMar 24,JavaOne confere

11、nce draws 15,000Mar 31,Ericsson,Sony,Siemens,BEA,OpenTV and others license Java technologyJune 3,Visa launches worlds first smart card based on Visas Open Platform and Suns Java Card technologyNov 5,Sun works with Linux Community on Java 2 software port to LinuxDec 8,Java 2 platform ships,13,Java的发展

12、,五年回顾(19962000)1999年Jan 13,Major consumer electronics manufacturers support Java technology for digital televisionFeb 24,Java 2 platform source code releasedMar 4,XML support for Java platform unveiledMar 27,Java HotSpot performance engine unveiledJune 2,JavaServer Pages technology unveiledJune 15,J

13、avaOne developer conference draws 20,000June 15,Sun announces three editions of Java platform:J2SE,J2EE,J2MEJune 29,J2EE Reference Implementation Alpha shipsAug 25,J2SE version 1.3 beta software releasedAug,The JavaPhone API specification included in an approved GSM standard by the European Telecomm

14、unications Standards Institute,14,Java的发展,五年回顾(19962000)1999年Sep 30,J2EE beta software releasedDec 8,J2EE platform shipsDec 8,J2SE platform on Linux ships2000年Apr 19,J2EE platform licensed to Art Technology Group,BEA Systems,Compaq,Hitachi,SilverStream,Sybase,.May,Membership in Java Developer Connec

15、tion program tops 1.5 millionMay 8,Sun to work with Chinese TV industry to define interactive digital TV spec for China TVMay 8,J2SE v.1.3 platform releasedMay 17,J2SE v 1.3 platform gains industry support from Apple with Mac OS X,15,第一章 Java语言概述,Java的发展什么是Java?Java程序介绍Java程序运行环境,16,什么是Java?,Java Te

16、chnology编程语言(Programming Language)运行平台(Platform),17,什么是Java?,Java编程语言的特点简单(Simple)面向对象(Object oriented)解释性(Interpreted)平台独立和可移植(Architecture neutral&Portable)鲁棒和安全(Robust&Secure)多线程(Multithreaded)分布式(Distributed)高性能(High performance)动态(Dynamic),18,Java编程语言的特点简单(Simple)简单易学不存在指针、单一继承、内存空间自动回收面向对象(Obj

17、ect oriented)类和对象数据和方法的封装封装、继承、多态性注重于数据和操作数据的方法,而不是流解释性(Interpreted)Java编译器生成字节码,Java解释器执行字节码链接过程简单,仅仅将新的类装载(load)入运行环境,什么是Java?,19,Java编程语言的特点平台独立(Architecture neutral)和可移植(Portable)Java编译器产生的字节码(bytecode)可运行在异种网络环境中(不同的硬件系统和不同的操作系统)Java程序在不同的平台中行为一致,不存在数据类型的不一致等现象,什么是Java?,20,Java编程语言的特点鲁棒/健壮(Robu

18、st)和安全(Secure)取消了指针的不安全性,增强了程序的健壮性内存管理简单,“new”构造对象,对象释放(automatic garbage collection)可靠的语言:compile-time checking和run-time checking网络环境的应用不会产生恶意行为,为Java程序构造一个个(Sandbox,具有安全策略的限制),提高了安全性,什么是Java?,21,Java编程语言的特点多线程(Multithreaded)native例:浏览器应用中,播听音乐/拖动页面/后台下载页面线程类:java.lang.Thread/Runnable/ThreadGroup等原

19、语支持:synchronized、wait()、notify()分布式(Distributed)支持网络应用,.*URL类Socket类、ServerSocket类DatagramSocket类、DatagramPacket类,什么是Java?,22,Java编程语言的特点高性能(High performance)解释性的语言,没有C语言快“Just-In-Time”JIT编译器,在运行时将Java字节码转变为机器码Java HotSpot Compilers动态(Dynamic)Java语言在执行的链接(link)阶段是动态的class类仅在需要时被链接被链接的代码模块可以有不同的来源,从本

20、地或从网络,什么是Java?,23,平台(Platform)程序运行的硬件和软件环境操作系统平台Windows 2000、Linux、Solaris、MacOS操作系统与硬件的结合Java运行平台(Platform)Java虚拟机(Java Virtual Machine,Java VM)Java解释器Java开发工具或可运行applet的Web浏览器 Java应用编程接口(Java Application Programming Interface,Java API),什么是Java?,24,Java运行平台(Platform)J2SE Platform(Java 2 Standard Ed

21、ition)Java Runtime Environment(JRE)Java虚拟机、库函数、运行Java应用程序和Applet所必须文件Java 2 SDK(Development Kit)JRE的超集,包含编译器和调试器等用于程序开发的文件Java虚拟机、Java应用编程接口和系统平台的关系,什么是Java?,25,Java平台的发展Java Development Kit1.0.21.1.1 1.1.6 1.1.7 1.1.81.2.1Java 2 SDK1.2.21.3.0 1.3.11.4.0 1.4.1 1.4.21.5.0Java平台的三个版本(1999.6):J2SE/J2EE

22、/J2MEhttp:/,什么是Java?,26,Java可以做什么?基本:Objects,strings,threads,numbers,input and output,data structures,system properties,date and time等 Applets应用网络应用:实现基于URL/TCP/UDP的网络应用国际化应用:实现程序的本地化,并以适当的语言显示安全应用:电子签名、公钥和私钥管理、访问控制和用户证书等软件构件:JavaBeans对象串行化:实现远程方法执行(Remote Method Invocation,RMI)Java数据库连接(Java Databa

23、se Connectivity,JDBC):提供统一的方式访问关系型数据库,什么是Java?,27,为什么选择Java?简单易学(Get started quickly)写较少的代码(Write less code)写更好的代码(Write better code):garbage collection(防止内存泄漏),面向对象、JavaBeans构件机制、其他API复用代码,减少bugs开发程序更快(Develop programs more quickly)避免平台依赖性(Avoid platform dependencies with 100%Pure Java)编写一次,随处运行(Wr

24、ite once,run anywhere)machine-independent bytecodes发布软件更容易(Distribute software more easily):指对软件的更新,利用动态加载功能,一处改动,自动更新,不用重新编译整个程序,什么是Java?,28,第一章 Java语言概述,Java的发展什么是Java?Java程序介绍Java程序运行环境,29,Java程序的种类,Java小应用程序(Java Applet)在Web浏览器中运行(内嵌Java虚拟机)特定标记 Java应用程序(Java Application)独立的Java程序程序入口方法:public s

25、tatic void main(String args)Java Script嵌入在HTML文件中的脚本语言特定标记 Netscape引入javascript,30,简单的Java应用程序,Java源程序文件扩展名为“.java”Java字节码程序文件扩展名为“.class”/*Exam1_1 class实现一个应用*将特定的字符串显示到标准输出*/public class Exam1_1 public static void main(String args)System.out.println(“This is a Java Application Program.);,31,定义类文件关

26、键词public 修饰符关键字class表示要定义一个类(模板),包含数据变量和方法关键字import表示引入程序外部定义的类/*Exam1_1 class实现一个应用*将特定的字符串显示到标准输出*/import java.lang.System;public class HelloWorld1 public static void main(String args)System.out.println(“This is a Java Application Program.”);,简单的Java应用程序,32,定义类文件类名称与Java源程序名一致class MyClass.所保存的文件为

27、:MyClass.java注意:大小写敏感,简单的Java应用程序,33,注解方式(Comments)/*/文档注解/*/程序内的任意位置/对本行注解/*Exam1_1 class实现一个应用*将特定的字符串显示到标注输出*/public class Exam1_1 public static void main(String args)System.out.println(“This is a Java Application Program.);,简单的JAVA应用程序,34,主方法(main Method)每个Java应用程序必须有且只能有的一个方法,程序执行的入口格式固定/*Exam1

28、_1 class实现一个应用*将特定的字符串显示到标注输出*/public class Exam1_1 public static void main(String args)System.out.println(“This is a Java Application Program.);,简单的Java应用程序,35,类和变量的引用类(java.lang.System),System类的一个变量out变量out是PrintStream类的一个实例,PrintStream类实现标准输出流引用实例out的方法println()变量和方法的引用通过“.”实现public class Exam1_1

29、 public static void main(String args)System.out.println(“This is a Java Application Program.);所有的Java类默认都引入java.lang.*,简单的Java应用程序,36,书写规范花括号对“”类,方法语句分号“;”结尾对齐和缩进区分大小写/*Exam1_1 class实现一个应用*将特定的字符串显示到标准输出*/public class Exam1_1 public static void main(String args)System.out.println(“This is a Java App

30、lication Program.);,简单的Java应用程序,37,简单的Java小程序(Applet),引入类和包引入特定的类(Class)import java.applet.Applet;import java.awt.Graphics;public class HelloWorld extends Applet public void paint(Graphics g)g.drawString(Hello world!,50,25);引入整个包(Package)import java.applet.*;import java.awt.*;,38,类的定义 定义一个公共类HelloWo

31、rld该类是Applet类的子类,关键词“extends”import java.applet.Applet;import java.awt.Graphics;public class HelloWorld extends Applet public void paint(Graphics g)g.drawString(Hello world!,50,25);,简单的Java小程序(Applet),39,方法定义 重写父类Applet的paint方法参数g是Graphics类的一个实例,表示当前作画的上下文引用g的方法drawString(),在坐标(50,25)处输出字符串 import j

32、ava.applet.Applet;import java.awt.Graphics;public class HelloWorld extends Applet public void paint(Graphics g)g.drawString(Hello world!,50,25);,简单的Java小程序(Applet),40,第一章 Java语言概述,Java的发展什么是Java?Java程序介绍Java程序运行环境,41,Java程序运行环境,Java开发工具(Java Development Kit,JDK),J2SDKJava API工具集基本工具(javac,java,javad

33、oc,appletviewer,jar,jdb,javah,javap,extcheck)远程方法调用工具(Remote Method Invocation,RMI)(rmic,rmiregistry,rmid,serialver)国际化工具(native2ascii)安全工具(keytool,jarsigner,policytool)Java IDL和RMI-IIOP工具(tnameserv,idlj,orbd,servertool)Java插件工具(Plug-in),42,获得 J2SDK http:/j2sdk-1_4_1-windows-i586.exe系统环境变量设置路径设置(pat

34、h)Windows 95/98,autoexec.bat,添加“path c:windows;c:windowscommand;c:j2sdk1.4.1bin”Windows NT/2000,控制面板系统高级环境变量,编辑path选项添加“c:j2sdk1.4.1bin”类路径设置(classpath)Windows 95/98,autoexec.bat,添加“set classpath=c:j2sdk1.4.1jrelibrt.jar;.”Windows NT/2000,控制面板系统高级环境变量,添加classpath选项添加“.”,表示在当前目录寻找class文件注:rt.jar-the

35、bootstrap classes(the RunTime classes that comprise the Java platforms core API).,Java程序运行环境,43,检查Java运行环境设置C:javaUsage:java-options class args.(to execute a class)or java-jar-options jarfile args.(to execute a jar file)C:javacUsage:javac C:java versionjava version 1.4.1_01Java(TM)2 Runtime Environm

36、ent,Standard Edition(build 1.4.1_01-b01)Java HotSpot(TM)Client VM(build 1.4.1_01-b01,mixed mode),Java程序运行环境,44,Java应用程序的编译和运行编写源文件Exam1_1.java(内容如前)保存到D盘根目录编译:D:javac Exam1_1.java生成Exam1_1.class文件运行:D:java Exam1_1This is a Java Application Program.问题:(classpath的路径设置)Exception in thread main java.lan

37、g.NoClassDefFoundError:,Java程序运行环境,45,Java小程序的编译和运行编写源文件 HelloWorld.java(内容如前)保存到D盘根目录编译D:javac HelloWorld.java生成HelloWorld.class文件编写HTML文件“Test.html”,保存到D盘根目录 A Simple Program Here is the output of my program:,Java程序运行环境,46,Java小程序的编译和运行运行用浏览器打开Test.html文件appletviewer Test.html,Java程序运行环境,47,第一章 结束!,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号