javajava基础精.ppt
《javajava基础精.ppt》由会员分享,可在线阅读,更多相关《javajava基础精.ppt(106页珍藏版)》请在三一办公上搜索。
1、Java 语言程序设计,Java 语言基础知识,信息化建设与管理办公室 张广彬E-,Java 语言程序设计,学习Java前的准备工作,3,Java的起源,Java来自于Sun公司的一个叫Green的项目,其原先的目的是为家用消费电子产品开发一个分布式代码系统,这样我们可以把E-mail发给电冰箱、电视机等家用电器,对它们进行控制,和它们进行信息交流。开始,准备采用C+,但C+太复杂,安全性差,最后基于C+开发了一种新的语言Oak(Java的前身),,4,Java的起源,Oak是一种用于网络的精巧而安全的语言,Sun公司曾以此投标一个交互式电视项目,但结果被SGI打败。可怜的Oak几乎无家可归,
2、恰巧这时Mark Ardreesen开发的Mosaic和Netscape启发了Oak项目组成员,他们用Java编 制 了HotJava浏 览器,5,Java的起源,得到了Sun公司首席执行官Scott McNealy的支持,触发了Java进 军Internet。Java的取名也有一则趣闻,有一天,几 位Java成员组的会员正在讨论给这个新的语言取什么名字,当时他们正在咖啡馆喝着Java(爪哇)咖 啡,有一个人灵机一动说就叫Java怎 样,得到了其他人的赞赏,于是,Java这个名字就这样传开了。,6,什么是JDK?上课讲的是Java1还是 Java2?什么是JRE?,Java的相关概念,JDK就
3、是Java的开发工具包,1998年12月,SUN公司发布了JDK1.2,开始使用“Java 2”这一名称,目前我们已经很少使用JDK1.1版本,所以我们所说的Java都是指Java2。J2SDK当然就是Java 2 Software Develop Kit。,JRE(Java Runtime Environment),即Java运行环境,通常已包含在J2SDK中了。,7,J2SE(Java 2 Platform,Standard Edition)J2EE(Java 2 Platform,Enterprise Edition)J2ME(Java 2 Platform,Micro Edition)
4、,Java的开发工具包(JDK),8,目录,1.1 Java语言与面向对象的程序设计1.2 Java程序概述1.3 基本数据类型与表达式1.4 数组的概念1.5 数组的创建和引用1.6 本章小结,9,1.1 Java语言与面向对象的程序设计,Java语言是一个面向对象的程序设计语言。除了面向对象的特点以外,Java语言还在安全性、平台无关性、支持多线程、内存管理等许多方面具有卓越的优点。,10,1.1.1 面向对象的程序设计思想,计算机程序设计对问题进行抽象用计算机语言表述,利用机器求解,Java语言与面向对象的程序设计,11,1.1.1 面向对象的程序设计思想(续),程序设计语言发展的历程机
5、器语言汇编语言高级语言面向对象的语言,Java语言与面向对象的程序设计,12,1.1.1 面向对象的程序设计思想(续),面向对象的思想将客观事物看作具有状态和行为的对象,通过抽象找出同一类对象的共同状态和行为,构成类。,Java语言与面向对象的程序设计,13,1.1.1 面向对象的程序设计思想(续),例:构建一个汽车类,需要提取所有汽车对象的共有的状态和行为。将状态用变量表示,行为用方法表示。class Car int color_number;int door_number;int speed;void brake()void speedUp();void slowDown();,Java语
6、言与面向对象的程序设计,14,1.1.1 面向对象的程序设计思想(续),面向对象技术给软件发展带来的益处可重用性可靠性 面向对象语言的基本特征抽象和封装继承性多态性,Java语言与面向对象的程序设计,15,1.1.2 Java语言的特点,面向对象安全性Java不支持指针Java的内部安全措施平台无关性编译后的字节码对应于Java虚拟机,因此可在不同平台上运行多线程Java是第一个在语言级提供内至多线程支持的高级语言内存管理Java对内存自动进行管理并进行垃圾回收,Java语言与面向对象的程序设计,16,1.1.2 Java语言的特点(续),Java 语言的优点易于学习代码效率高代码质量高开发程
7、序快体系结构中立,纯Java程序不依赖于平台一处编写,各处运行软件易于发布,Java语言与面向对象的程序设计,17,1.1.2 Java语言的特点(续),Java与C+的区别Java中没有#include 和#define 等预处理功能,用import语来句包含其它类和包;Java中没有structure,union及typedef;Java中没有不属于类成员的函数,没有指针和多重继承,Java只支持单重继承;Java中禁用goto,但goto还是保留的关键字;Java中没有操作符重载;Java中没有全局变量,可以在类中定义公用、静态的数据成员实现相同功能;.,Java语言与面向对象的程序设计
8、,18,1.1.3 Java类库,组成Java程序的最小单位是类,类封装了数据与处理数据的方法。对于大多数常用的功能,有大量已经编译好、经过测试的类,这些类的集合就是Java类库。Java类库主要是随编译器一起提供,也有些类库是由独立软件开发商提供的。,Java语言与面向对象的程序设计,19,1.2 Java程序概述,Java 开发环境Application 举例Applet举例Servlet举例JSP举例,20,1.2.1 Java开发环境,Java程序概述,Java程序编译执行的过程,21,1.2.1 Java开发环境(续),一次编写,各处运行,Java程序概述,22,编译,没有绝对地址,
9、将.class文件装载到内存,不存在伪造的指针不违反访问权限不非法访问对象不导致操作栈溢出,Java的编译与执行,Java程序概述,1.2.1 Java开发环境(续),23,1.2.1 Java开发环境(续),Java APIs(应用程序接口)经过编译的,可在程序中使用的Java代码标准库。Java VM(虚拟机)Java 程序由Java虚拟机程序执行(或解释执行)。,Java 平台,Java程序概述,24,1.2.1 Java开发环境(续),Java2 SDK(Software Development Kit)Standard Edition(J2SE)Enterprise Edition(
10、J2EE)Mobile Edition(J2ME),Java程序概述,25,1.2.1 Java开发环境(续),J2SEJ2SDK的核心部分开发工具编译器调试器 文档制作工具运行环境 Java 虚拟机组成Java 2 平台API的类。帮助文档附加库 Java程序(Applets 和 Applications)的演示,Java程序概述,26,Java开发工具包括Javac:Java编译器,用来将java程序编译成 Bytecode。Java:Java解释器,执行已经转换成Bytecode的java应用程序。Jdb:Java调试器,用来调试java程序。Javap:反编译,将类文件还原回方法和变量
11、。Javadoc:文档生成器,创建HTML文件。Appletviwer:Applet解释器,用来解释已经转换成Bytecode的java小应用程序。,1.2.1 Java开发环境(续),Java程序概述,27,1.2.1 Java开发环境(续),环境安装以为例下载地址下载文件jdk-6u26-windows-i586-p.exej2sdk-1_6_0-doc.zip安装直接运行“jdk-6u26-windows-i586-p.exe”。文档解开“j2sdk-1_6_0-doc.zip”。,Java程序概述,28,1.2.1 Java开发环境(续),安装JDK后产生如下目录:bin目录:Java
12、开发工具,包括Java编译器、解释器等 demo目录:一些实例程序 lib目录:Java开发类库 jre目录:Java运行环境,包括Java虚拟机、运行类库等,Java程序概述,29,1.2.1 Java开发环境(续),配置环境变量:SDK平台提供的Java编译器(javac.exe)和Java解释器(java.exe)位于Java安装目录的bin文件夹中,为了能在任何目录中使用编译器和解释器,应在系统特性中设置Path。对于Windows2000、Windows2003、Windows XP,用鼠标右键点击“我的电脑”,弹出菜单,然后选择属性,弹出“系统特性”对话框,再单击该对话框中的高级选
13、项,然后点击按钮“环境变量”,添加如下的系统环境变量,Java程序概述,30,1.2.1 Java开发环境(续),Java程序概述,31,1.2.1 Java开发环境(续),系统环境ClassPath 值的设置:SDK的安装目录的jre文件夹中包含着Java应用程序运行时所需要的Java类库,这些类库被包含在jrelib目录下的压缩文件rt.jar中,Java程序概述,32,1.2.1 Java开发环境(续),Java程序概述,33,1.2.1 Java开发环境(续),几种集成开发环境netBeansJcreator LEBorland JBuilderMicrosoft Visual J+I
14、BM:Visual Age for JavaSun ONE Studio,Java程序概述,34,1.2.2 Application举例,Application运行在客户端Java虚拟机上的Java程序可在客户端机器中读写可使用自己的主窗口、标题栏和菜单程序可大可小能够以命令行方式运行主类必须有一个主方法main(),作为程序运行的入口。,Java程序概述,35,1.2.3 Application举例(续)例1-1,Java程序概述,public class Hello public static void main(String args)(你好,很高兴学习Java);,36,保存 将源文件
15、保存到D:1000中,并命名为Hello.java。注意不可写成hello.java,因为Java语言是区分大小写的。源文件的命名规则是这样的,如果源文件中有多个类,那么只能有一个类是public类。如果有一个类是public类,那么源文件的名字必须与这个类的名字完全相同,扩展名是.java。如果源文件没有public类,那么源文件的名字只要和某个类的名字相同,并且扩展名是.java就可以了。,37,编译 当创建了Hello.java这个源文件后,就要使用Java编译器(javac.exe)对其进行编译 D:1000javac Hello.java运行 Java应用程序必须通过Java虚拟机中
16、的Java解释器(java.exe)来解释执行其字节码文件。Java应用程序总是从主类的main方法开始执行。因此,必须如下运行Java应用程序:D:1000java Hello,38,public class MyClass private int val1,val2;public void myFun(int x,int y)val1=x;val2=y;System.out.println(The sum is:+(val1+val2);public static void main(String arg)MyClass MyObj=new MyClass();MyObj.myFun(1,
17、2);,1.2.3 Application举例(续)例1-2,Java程序概述,39,1.2.3 Application举例(续)例1-2 运行结果,使用如下命令编译并运行程序:javacMyClass.javajava MyClass运行结果如下:The sum is:3,Java程序概述,40,Applet小应用程序运行于支持Java的Web浏览器中浏览器的解释器把字节码转换成和机器匹配的指令,在网页中执行小程序。Applet和Application的差别:运行环境的不同,小应用程序总是放在Web浏览器的图形用户界面中,1.2.3 Applet举例,Java程序概述,41,Applet的优
18、点Web 浏览器软件包括很多小应用程序运行所需的功能Applet的局限性在客户端主机的文件系统中读/写受限不能运行客户端主机的任何程序仅能在服务器和客户端之间建立联系,1.2.3 Applet举例(续),Java程序概述,42,JAVA Applet:import;import java.applet.Applet;public class MyApplet extends Appletpublic String s;public void init()s=new String(Hello World!);public void paint(Graphics g)g.drawString(s,
19、25,25);HTML:,1.2.3 Applet举例(续)例1-3,Java程序概述,43,1.2.3 Applet举例(续)例1-3注释,Graphics类使得applet绘制直线、矩形、椭圆形、字符串等方法init()初始化,实现了字符串的创建方法paint()中g为Graphics类的对象。调用了Graphics的drawString方法绘制字符串。此方法执行的结果就是从坐标(60,40)开始绘制出字符串Hello World!。,Java程序概述,44,1.2.3 Applet举例(续)例1-3运行,用支持Java的浏览器,比如IE6.0,打开Applet1.html,Java程序概
20、述,45,1.2.3 Applet举例(续)例1-3运行,用Java自带的appletviewer浏览输入:appletviewer Applet1.html,Java程序概述,46,Servlet运行在服务器端,响应客户端请求,扩展了服务器的功能 运行Servlet需要服务器的支持,需要在服务器中进行部署Servlet用到的包在J2EE的API中能找到所有的servlet都必须实现Servlet接口,1.2.4 Servlet举例,Java程序概述,47,程序首先构建HttpServletRequest,并建立一个数据表单;点击submit按钮后,servlet再次被调用,并产生一个含有表单
21、的网页。public class EchoForm extends HttpServlet public void service(HttpServletRequest req,HttpServletResponse res)throws IOException res.setContentType(text/html);PrintWriter out=res.getWriter();Enumeration flds=req.getParameterNames();,1.2.5 Servlet举例(续)例1-3,Java程序概述,48,1.2.5 Servlet举例(续)例1-3,if(!fl
22、ds.hasMoreElements()out.print();out.print();for(int i=0;i Field+i+);out.print();,Java程序概述,49,else out.print(Your form contained:);while(flds.hasMoreElements()String field=(String)flds.nextElement();String value=req.getParameter(field);out.print(field+=+value+);out.close();,1.2.5 Servlet举例(续)例1-3,Jav
23、a程序概述,50,JSP就是嵌入了Java代码的HTML JSP和servlet同是服务器端的技术。实际上,JSP文档在后台被自动转换成servlet 使用JSP便于实现网页的动静分离相对于Servlet,JSP在服务器的部署简单,1.2.6 JSP举例,Java程序概述,51,The time in second is:,1.2.6 JSP举例(续),Java程序概述,52,1.3 基本数据类型与表达式,变量与常量基本数据类型表达式与运算符类型转换,53,1.3.1 变量与常量,变量一个由标识符命名的项每个变量都有类型,例如 int 类型或 Object类型,变量还有作用域.变量的值可以被改
24、变.常量 常量一旦被初始化以后就不可改变。,基本数据类型与表达式,54,标识符标识符是一个名称,与内存中的某个位置(地址)相对应标识符的第一个字符必须是下列字符之一:大写字母(A-Z)小写字母(a-z)下划线(_)美元符号($)标识符的第二个字符及后继字符必须是:上述列表中的任意字符 数字字符(0-9),基本数据类型与表达式,1.3.1 变量与常量(续),55,整数 byte 8 bits-128+127 short 16 bits-32768+32767int 32 bits 231(231-1)long 64 bits 263(263-1)char 8 bits 0 65535,基本数据类
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- javajava 基础

链接地址:https://www.31ppt.com/p-5435961.html