Java项目教学教案.docx

上传人:小飞机 文档编号:4196959 上传时间:2023-04-09 格式:DOCX 页数:54 大小:360.06KB
返回 下载 相关 举报
Java项目教学教案.docx_第1页
第1页 / 共54页
Java项目教学教案.docx_第2页
第2页 / 共54页
Java项目教学教案.docx_第3页
第3页 / 共54页
Java项目教学教案.docx_第4页
第4页 / 共54页
Java项目教学教案.docx_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《Java项目教学教案.docx》由会员分享,可在线阅读,更多相关《Java项目教学教案.docx(54页珍藏版)》请在三一办公上搜索。

1、JAVA程序设计 授 课 教 案 第一章 概述 授课题目Java语言概述学时安排4学时课程设计Java发展Java 开发平台搭建JAVA程序分类应用程序开发过程教学目的学生认识Java发展历史及崛起的原因、掌握Java开发平台搭建、掌握Java应用程序开发过程。教学要求1、了解Java发展及程序分类2、掌握Java开发平台搭建3、掌握Java应用程序开发过程教学重点掌握Java开发平台搭建教学难点掌握Java开发平台搭建授课类型理论课、实训课授课场地教室教学方式讲授、演示、提问、讨论教辅设备投影仪教学内容引入我们交朋友时,除了要了解他的现在,还要了解他的过去,了解他的历史。才能较全面、较深刻认

2、识他。在学习java的时候,我们也从它的历史入手。本章我们将介绍Java的历史、开发平台搭建及开发过程。2、Java的发展1991年4月8日,从工作站起家的Sun公司为了把市扩大到消费电子产品,成立了一个专门的工作小组,着手代号为Green的项目,目的是开发一个分布式代码系统,让人们可以把E-mail发送给电冰箱、电视机、空调等家用电器,对它们进行控制,同它们进行信息交流;这个系统还应当具有独立于软件平台的特征、网络操作功能强大,并容易被程序员们接受。基于这一目标,自然应当首选当时已经广为流行的C+进行开发。但是C+太过复杂,安全性也差、网络功能也达不到要求,最后不得不重新定义一套新的语言系统

3、,于是便有了Oak(意为橡树)的问世。Oak一方面汲取了C+的有益成分,同时融进了网络应用特性,可以称得上是一种精巧而安全的语言了。可惜,Sun以它投标一个自认为比较合适的交互式电视项目时,却一败涂地,可怜的Oak几乎陷入困境。恰巧这时,Mark Ardreesen的Mosaic(马赛克)和Netscape的巨大成功给Oak项目组成员带来了新的希望,他们重整旗鼓,对Oak进行了一次新的整合,并给了它一个据说来自几位小组成员喝Java(爪哇)咖啡时灵机一动想到的新名字-Java。接着,他们在Sun公司首席执行官Scott MCnealy的支持下,用Java编制了HotJava浏览器,吹响了进军I

4、nternet的号角。Java由于与Internet的成功结合而很快风靡全球,计算机产业的许多大公司购买了Java的许可证,包括IBM、Apple、DEC、Adobe、HP、Oracle,以及最不情原的Microsoft。众多的软件开发商开始支持Java的软件产品。Java所特有的“write once,run anywhere”。的与平台无关性的概念,与Internet的异构网络互联一拍即合。它特别适合在网络开发中使用,这一优势直威胁到Wintel联盟的垄断地位,使得它成为面向对象开发工具中潜力巨大的一员。3、Java的基本特点1)简单性 Java的简单性指的是Java的语法简单,Java实

5、际上是C+的一个“纯净”版本。其中没有头文件、指针算法、结构、联合、操作符重载等较为复杂的部分。2)面向对象面向对象在过去30年已经证明了自身的价值,如今很难想象一个现代编程语言不是面向对象的。Java语言是一种面向对象的语言,这是Java语言的重要特点。 3)分布式Java的网络能力强大而且易于使用。Java把打开套接字连接等繁琐的网络任务变得非常容易。4)健壮性Java编译器会检查出很多其它语言在运行时刻才显示出来的错误。5)跨平台性Java对其基本数据类型的大小及其算法都做了明确的规定。例如:int类型在Java中始终是32位的整数。字符串在Java中用标准的Unicode格式存储。4、

6、Java开发环境的构建 1)JDK简介 SDK是Software Development Kit 这几个单词的简称,是Sun公司发展的Java开发环境,是学习开发java程序最初使用的环境;读者可以从1.4.2下载。2)JDK安装 在http 1.4.2地址下载JDK安装包。 下载的文件是已经被SUN公司打包的可执行文件。用户只需双击相应的文件出现图所示画面开始安装。用户可以根据提示一步一步安装完毕。 3) 环境变量设定 设定环境变量的目的是为了能够正常使用所安装的Java开发包(JDK).主要包括两个环境:Path和Classpath。Path称之为路径环境变量,用来指定Java开发包中的一

7、些可执行程序所在的位置Class称之为类路径环境变量,用来指定编译时需要的类。 设定Path环境变量步骤如下:第一步:右击【我的电脑】,在弹出菜单中选择【属性】,出现如图所示的【系统特性】对话框。第二步:选择【高级】属性页,在该页面中有一个【环境变量】按钮,单击进入对话框,如图所示。 图 图第三步:编辑Path环境变量在图所示的系统变量中找到Path变量,然后单击【编辑】按钮,弹出图所示对话框,读者在【变量值】标签所示的编辑文本框的后面追加”;c:bin”(注意,引号不能作为值加入,c:bin是你安装JDK的目录,随你安装目录不同而变化)(2)设置ClassPath环境变量的步骤 第一步:同P

8、ath环境变量设置相同,请参照图第二步:同Path环境变量设置相同,请参照图第三步:编辑ClassPath环境变量在图所示的Adiministrator用户环境变量中ClassPath变量,然后单击【编辑】按钮,弹出图所示对话框,读者在【变量值】标签所示的编辑文本框的后面追加”;c:lib.;.;d:javaprogram”(注意,引号不能作为值加入,c:lib.;是你安装JDK的目录,随你安装目录不同而变化,”.”为当前目录,“d:javaprogram”为Java文件存放目录) 图5、Java应用程序开发过程 1)编写源代码 例1.3.1 /* * * 功能:输出Hello World!样

9、字符 * author 黎红星 * version * */public class HelloWorld public static void main(String args) Hello World!); 写完代码后,保存为 2)编译源代码 Java是解释型语言,在解释中只能识别字用Java编译器编译的节码。在JDK中,Java的编译器是。使用javac命令,就可以将Java源文件编译成字节码。对应于Java源文件里的每一个类,Javac都将生成一个与此类类名相同但后缀为.class的字节码文件,并将它们放在源文件的同一文件夹中。javac命令的一般格式为 javac 文件名.java

10、3)运行位于Java安装目录的bin子目录中,称为Java解释器,用于对指定的字节码进行解释并加以执行。命令的一般格式如下:java 文件名在本例中,其命令格式如下:java HelloWorld讨论、思考题、作业: 1.理解Java跨平台性2.在Java环境配置中,path、pathclass变量的作用。程序分为哪几类?写一Java应用程序,输出”Hello World!”参考资料(含参考书、文献等):Java程序开发教程 清华大学出版社 张基温网站实施情况及分析:学生能较好掌握开发环境配置及应用程序开发过程。第二章 简单数据类型、运算符授课题目简单数据类型、运符算学时安排2学时课程设计常量

11、和变量的概念各种数据类型的使用及转换运算符、表达式、优先级、结合性等概念教学目的学生理解常量、变量的概念、运算符、表达式、优先级、结合性等概念;掌握程序结构设计的三种基本结构,为以后深入学习打下基础。教学要求1、理解常量、变量的概念、运算符、表达式、优先级、结合性等概念2、了解数据类型的使用及转换教学重点常量、变量的概念、运算符、表达式、优先级、结合性等概念教学难点数据类型转换、结合性授课类型理论课、实训课授课场地教室教学方式讲授、演示、提问、讨论教辅设备投影仪教学内容一、 引入人们学习开车时,首先要了解的是车子有哪些部件可以使用,哪些部件是车子保留不能使用以及每一个部件的作用。然而学习一门语

12、言与学习车子类似,我们首先要了解有哪些数据类型可以使用、有哪些程序结构在开发过程中使用。这章作为Java程序的入门章节,我们将重点学习常量、变量的概念、运算符、表达式、优先级等基本概念以及程序设计的三种基本结构。二、 案例:现在有柑子5个,苹果10个,请计算它们的总和并输出结果。 程序清单: public class Fruit public static void main(String args) 005c000a000c十进制数形式,由数字和小数点组成,且必须有小数点,如,.123,23.,。2. 科学计数法形式。如:123e3或123E3,其中e或E之前必须有数,且e或E后面的指数必须

13、为整数。实常数在机器中占64位,具有double型的值。对于float型的值,要在数字后加f或F,如12.3F,它在机器中占32位,且表示精度较低。(4)变量与常量 变量:其值可以改变的量。如上面的numOranges、numApples等。 学习变量时要注意的是变量的命名要符合标识符的命名规则。 变量的定义及变量的初始化等相关知识的讲解。 常量:其值不可改变的量是常量。注意常量的定义要用关键字final,如: final int PI=3;则这里PI就是常量。在程序中如果试图改变PI的值则系统会给出错误信息。(5)运算符与表达式 定义:运算符又称做操作符,是各种不同运算操作的符号化表示 分类

14、:算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符和条件运算符等 算术运算符:算术运算符用于数值类型数据(整数或浮点数)的运算。 注意:/、%、+、-四个特殊算术运算符。 赋值运算:在赋值符“”前加上其他运算符,即构成扩展赋值运算符,它将运算的结果直接存到左边的已命名变量中去。 关系运算符:关系运算是用来比较两个数的大小,并返回布尔型值true或false。 布尔运算符:布尔运算符用于进行布尔运算,运算的结果仍然是布尔型数值。布尔运算符常与关系运算符一起使用,作为流程控制语句的判断条件。 注意:真值表的运用。 &”与“”是短路(Short-Circuit)逻辑运算符 &”与“|”是非短

15、路逻辑运算符 (6)数据类型转换 隐含类型转换隐式转换(自动类型转换)允许在赋值和计算时由编译系统按一定的优先次序自动完成,通常,低精度类型到高精度的缺省类型转换由系统自动转换。例如:int i=20;long j=i;隐式转换从低级到高级的转换顺序如下:byteshort、int、long、float、doubleshortint、long、float、doublecharint、long、float、doubleintlong、float、doublelongfloat、doublefloatdouble显示转换显示转换是将高精度数据类型转换到低精度数据类型,它是通过赋值语句来实现。(7)

16、运算符的优先级别与结合方向优先顺序运 算 符结 合 性1 . ()左/右2!,+,typeof,new,void,delete右3*,%左4,左5,左6,=左7= =,!=,= = =(严格等于),!=(严格不等于)左8&左9左10|左11&左12|左13? :左14=,+=,=,*=,/=,%=,=,=,&=,=,|=右讨论、思考题、作业: 1. 计算两个数的和、差、积、商2.调试并运行下列程序,分析输出结果public class Datetype public static void main(String args) byte a=30,b; double c=,d; int i,k=

17、100; d=a;b=(byte)k; i=(int)c; 调试并运行下列程序,分析输出结果import .* ;public class DeclareVarVariable public static void main(String args)byte b= 043;short s=0x43;int i=100;long l=0xffffL;char c=c;float f=3.14F;double d=;boolean k=true;String S=This is a string!;字节型变量 b = +b);短整型变量 s = +s);整型变量 i = +i);长整型变量 l =

18、 +l);字符型变量 c = +c);浮点型变量 f = +f);双精度变量 d = +d);布尔型变量 k = +k);字符串类对象 S = +S);参考资料(含参考书、文献等):Java程序开发教程 清华大学出版社 张基温网站实施情况及分析:学生能较好分析出上述思考题的结果,学习效果较好。java面向对象技术概述授课题目JAVA面向对象技术概述 学时安排3课程设计捕猎程序教学目的掌握面向对象基本思想与方法 教学要求掌握面向对象的基本概念教学重点面向对象思想和面向过程的思想有什么不同?面向对象中的重要概念教学难点面向对象思想和面向过程思想的区别授课类型理论课授课场地教室教学方式讲授、演示、提

19、问、讨论教辅设备投影仪教学内容1、 捕猎游戏 假如猎人在森林里面打猎,那么有各种各样的猎物存在。应当怎样用程序来表示猎人注意到的以及抓到的猎物?面向过程的写法我们是如何表示的?2、 思考:应当怎样用程序来表示猎人注意到的以及抓到的猎物?在面向对象的设计思想当中我们应当怎样来定义这些动物?是否需要对每一种动物都分别重复的定义?又怎么表示打猎的猎人?3、 面向对象 面向对象技术是一种软件开发和程序设计技术。4、 面向对象方法 面向对象方法是一种运用对象,类,封装,继承,多态和消息等概念来构造,测试,重构软件的方法。5、 对象 对象是封装了数据和操作的程序块。6、 类 类是具有相似内部状态和运动规律

20、的实体(对象)的集合。7、 面向对象程序设计的三大特点a) 封装性 通过对象的封装,实现了模块化和信息隐藏;通过对类的成员施以一定的访问权限,实现了类中成员的信息隐藏。 2继承性 继承是可以让某个类型的对象获得另一个类型的对象的属性的方法。它支持按纪分类的概念。 3多态性 多态性体现在两个方面:由方法重载实现的静态多态性(编译时多态)和方法覆盖实现的动态多态性(运行时多态)。 讨论、思考题、作业: 思考:面向对象编程在编程思想上对面向过程的思想做了什么改变?参考资料:java2入门基础编著:Ivor Horton, 中国电力出版社Java语言程序设计第2版 编著:殷兆麟等, 高等教育出版社实施

21、情况及分析:学生带着问题进入学习过程当中,每次学习都能够解决一个问题,并在上机实践中加以运用。学习积极性高,学习状况良好。类、对象与封装授课题目类、对象与封装 学时安排2课程设计捕猎程序教学目的类、对象与封装的基本概念教学要求掌握类的声明,定义,类和对象的关系以及简单操作。教学重点类与对象类的声明,定义 教学难点类的声明,定义授课类型理论课授课场地教室教学方式讲授、演示、提问、讨论教辅设备投影仪教学内容一、 类和对象的关系 类实例化就成为对象。类是具有相同属性的对象的集合。二、 具体实现最开始给出的实例。 1类声明class 类名extends 父类名 implements 接口列表 类体 2

22、类中含有两种成员:成员变量 ,成员方法。成员变量的声明方式如下:public | protected | private static final type 变量名; 建子类格式:class SubClass extends SuperClass 2.注意:l 子类不能继承父类中访问权限为private的成员变量和方法。l Java不支持多重继承,即一个类从多个超类派生的能力。3思考:l 我们是否还需要像面向过程的方法一样对每一种动物都重复的进行定义?l 如果采用继承的方法能够带来什么样的改变4实现动物类当中的猫和狗两个子类,他们都具有父类动物类的属性。讨论、思考题、作业: 1、实现捕猎游戏中

23、的猫和狗两个子类,由动物类继承而来 参考资料:java2入门基础编著:Ivor Horton, 中国电力出版社Java语言程序设计第2版 编著:殷兆麟等, 高等教育出版社实施情况及分析:学生带着问题进入学习过程当中,每次学习都能够解决一个问题,并在上机实践中加以运用。学习积极性高,学习状况良好。异样处置授课题目异常处理学时安排4课程设计主要介绍单元设计的要求教学目的1、 Jav a异常处理机制2、 讲授异常捕捉、异常处理、清理异常的方法教学要求1、 理解异常的概念2、 了解异常类及其层次关系3、 熟练掌握常用的标准Java异常类4、 熟练掌握抛出异常、声明抛出异常、定义异常的方法5、 创建自定

24、义的异常类型教学重点1、Jav a异常处理机制2、掌握抛出异常、声明抛出异常、定义异常的方法教学难点1、Jav a异常处理机制2、掌握抛出异常、声明抛出异常、定义异常的方法授课类型理论课授课场地教 室教学方式讲授、演示、提问、讨论教辅设备投影仪教学内容1、 引入异常的概念 通过程序演示数学计算中除数为了0时产生的错误信息,引入抛出异常的概念。 我们都希望自己的程序不包含任何错误,也都希望我们的程序要访问的资源总是可用。然而现实的情况可能和所期望的恰恰相反:程序中包含有“bug”,在运行时会出现各种错误;要访问的资源不存在或是存在但不能访问。Java提供了强有力的异常处理机制来应对可能出现的各种

25、异常情况。本章重点讲解Java异常处理机制及如何处理抛出异常、声明抛出异常、定义异常的方法。2、 通过提问(讨论式、启发式提问)和比较归纳,处理异常的必要性和重要性 作为一名合格优秀的程序员,必须认识到在程序中处理异常的重要性。 Java运用面向对象的方法进行异常处理,把各种不同的异常进行分类,并提供了良好的接口。这种机制为复杂程序提供了强有力的控制方式。同时这些异常代码与“常规”代码的分离,增强了程序的可读性,编写程序时也显得更为灵活。那么,我们采用错误代码和异常处理相结合的方式到底有哪些优越性呢?1) 把错误代码与常规代码分开2) 可以在catch中传播错误信息3) 可以对错误类型分组4)

26、 方便定位错误,维护 要写出友好,健壮的程序,灵活地运用Java程序语言的异常处理机制,须从以下几个角度来认识异常:异常类及分类、捕获异常、处理异常及抛出异常。3、 异常类及分类 在Java中,异常也是被视为对象,所有的异常都继承于Throwable类,Throwable类中有一个String类型的变量,它保存的是异常对象的一些说明信息,该信息可以用来识别所抛出的异常。 Throwable类分别有两个子类,分别是:Exception类和Error类,但对于软件开发者来说,大多数遇到的异常对象都属于Exception类及其相应的子类,这是因为Exception类型的异常是由编写的代码所引起的,而

27、Error类型的异常则是由Java虚拟机自身或者虚拟机与代码之间的连接引起的。以下给出一个简化的Java异常继承关系图。ErrorThrowableExceptionIOExceptionRuntimeException用户自定义异常 Exception类的子类的分类:Exception类的子类可以分为两种类弄,即checked和unchecked 。其中unchecked类型的异常是指那些没有被检查出来的异常,它的抛出一般是由代码编写者的疏忽大意引起的。checked类型的异常指的是那些代码编写没有问题,但是在代码的实际运行期间,由于代码所处环境的影响而抛出的异常。4、 学习异常处理关键字:

28、try、catch、finally、 throws 和throw 。 1)、通过对比分析程序和,引入trycatch语句,并阐述Java中异常的处理机制。 2)、通过走读中的代码,引导学生了解trycatch语句的执行步骤。 3)、如果程序出现非常严重的异常而导致程序完全退出,势必会给系统带来一些不确定的因素,Java提供了finally语句,不管抛出异常与否,都必须执行finally语句块,通常在finally语句中可以进行资源的清除工作,如关闭打开的文件等。 分析程序 代码,引出throws和throw异常关键字,并阐述其用法: 4)、throws总是出现在一个函数头中,用来标明该成员函数

29、可能抛出的各种异常。 5)、throw总是出现在函数体中,异常并不是系统出错产生,而是人为地抛出的异常。程序会在throw语句后立即终止执行。5、 创建自定义的异常类型 当程序员为提供一些特定的功能用Java类时,往往需要保证类之间有良好的关系,而且类之间的接口易于理解和实现。对于异常类一样,可以定义新的异常类。创建自己的异常类更便于维护和管理。通常采用Exception作为异常类的父类。 通过再次分析程序 代码,分析自定义异常抛出处理过程。6、 知识点讲解及程序代码分析 1)、 源代码public class ExceptionExam public static void main(Str

30、ing args) int i=0; i=3/i; 2)、 源代码public class ExceptionExam1 public static void main(String args ) int i, a; try ; static void testRuntime( ) throws MyArithException try 为了实现交互,必须进行事件的处理.8、 问题提问a) GUI中的容器有哪些类型?b) AWT中的组件都有那些?9、 知识点讲解 用户界面(User Interface),简称UI,Java的图形用户界面的最基本组成部分是组件(Component),组件是一个可

31、以以图形化的方式显示在屏幕上并能与用户进行交互的对象,例如一个按钮,一个标签等。组件不能独立地显示出来,必须将组件放在一定的容器中才可以显示出来。本节主要介绍如何创建各种UI组件。 案例:创建用户登陆界面 现代的用户倾向于使用可以由鼠标方便操作的图形用户界面(GUI-Graphical User Interface)程序。本章的内容就是介绍如何使用JFC(Java Foundation Class)中的Swing组件(Component)来构建GUI应用程序用户界面设计原则l 使用图形界面GUI (Graphics User Interface) 字符界面采用命令行方式与用户交互。 图形界面用

32、多种媒体显示信息,用直观、方便的GUI标准组件来接收命令。l 控制权在用户l 界面与操作的风格一致性l 宽容(容错)性l 简洁与美观并重界面元素l 容器是用来组织其他界面成分和元素的单元。 可以形成容器的层次,构筑复杂结构 Window(Frame、Applet、Dialog )l 组件是图形用户界面的基本单位,它里面不再包含其他的成分。 GUI组件是图形用户界面标准化的结果。 GUI组件的作用是完成与用户的交互。l 用户自定义成分 文字、图形、图象 不能像标准组件一样被系统识别和承认,只起装饰作用。 不能响应用户的动作,不具有交互功能。Containers 容器组件l Window 不需要其

33、他组件支撑,独立显示。 Frame Dialog 没有菜单条,不能改变大小l Panel 必须放在Window组件中(或Web浏览器窗口)才能显示。它为一矩形区域,在其中可摆放其他组件,可以有自己的布局管理器。l 基本方法 add(Component comp) 将指定组件放到容器中 add(Component comp,int index) remove(Componentcomp) 删除指定组件 setLayout(LayoutManagermgr) 设置容器布局Component类l 可显示在屏幕上的图形对象,可与用户交互。方法:l add(PopupMenupopup) 加一弹出菜单l

34、 addFocusListener(FocusListenerl)将发生在本组件上的事件注册给监听者,以进行事件处理。l setSize(intwidth, intheight) 设置组件尺寸l paint(Graphicsg) 重画组件l setFont(Fontf) 设置组件字体l setBackground(Colorc) 设置组件背景色l setForeground(Colorc) 设置组件前景色Font类l l 设计字体显示效果Font mf = new Font(String 字体,int 风格,int 字号); 字体:TimesRoman, Courier, Arial等 风格:

35、三个常量l , , 字号:字的大小(磅数)l 设置组件当前使用的字体:setFont(Font fn)l 获取组件当前使用的字体:getFont()Color类 构造函数1(设置颜色) Color c = new Color(intred, intgreen, intblue) 范围 :0255 new Color(200,200,200) new Color(255,0,100)构造函数2Color c = new Color(int rgb) 兰色:07 位 绿色:815位 红色:1623位 颜色常量值public static final Color black , , , Color.

36、 red 常用组件 1.标识(Label) 语法格式: Label(String s) 功能: 构造一个显示字符串s的标识。 2.按钮(Button) 语法格式:Button (String s)功能:构造一个以字符串s为标识的按钮。3.复选框(Checkbox) 语法格式: Checkbox (String s) 功能:构造一个以字符串s为标识的复选框条目,未被选中。 4.单选按钮(Radio Buttons) 语法格式: CheckboxGroup( ) 功能: 构造一个条目组。5.选择菜单(Choice Menu) 语法格式: Choice ( ) 功能:构造一个选择菜单。 说明:构造完

37、之后,再使用Choice类中的addItem方法加入菜单的条目。6.列表框(Scrolling List) 语法格式:List (int n, boolean b) 功能:构造一个有n个列表项的列表框,并根据b的值决定是否允许多选。 7.单行文本输入框(TextField) 语法格式:TextField (int i) 功能:构造一个字符串长度为i单行文本输入框 8.多行文本输入框(TextArea) 语法格式: TextArea (int i, int j) 功能: 构造一个多行文本输入框,行数为i,列数为j讨论、思考题、作业: 1. 简答题(1)UI组件包括哪些?(2)写出创建一个指定长度

38、、指定初始内容的单行文本输入框的语句。(3)简述创建复选按钮时和创建单选按钮时的区别。 2操作题试设计一个学校的学生学籍资料录入界面,内容自定,尽量使用各种UI组件。参考资料(含参考书、文献等):实施情况及分析:良 好GUI编程基础-布局治理 授课题目GUI编程基础-布局管理学时安排2学时课程设计本讲主要讲述GUI界面设计的事件处理教学目的掌握GUI中的事件处理教学要求学会GUI中的事件处理教学重点事件处理教学难点事件处理过程授课类型理论课授课场地教室教学方式讲授、演示、提问、讨论教辅设备投影仪教学内容1、案例 下面是利用不同的UI组件所创建的某公司的员工信息录入界面的案例。如下图所示 2、分

39、析:本按例是一个简单的UI设计,同学们可以看的出来,界面看起来很混乱,java中为GUI设计准备了布局管理和事件处理等操作3、提问如何使界面条例清晰?4、知识点讲解为了实现跨平台的特性并且获得动态的布局效果,Java将窗体内的所有组件安排给一个“布局管理器”负责管理,当窗口移动或调整大小后组件如何变化等功能授权给对应的窗体布局管理器来管理。AWT提供三种最基本的布局管理器可供选择: 1.流式布局管理器(FlowLayout); 2.网格布局管理器(GridLayout);3.边框布局管理器(BorderLayout) 修改前面的代码使界面看起来美观,简洁,整齐容器的组件布局 布局管理器(lay

40、out manager) 负责确定组件在容器中的位置和大小。 调用容器的setLayout(布局管理器对象) 方法,为容器指定某种布局管理器的一个对象。 当容器需要定位组件和确定组件大小时,就会给布局管理器对象发消息,让它完成该项工作。直接管理组件 调用容器的 setLayout(null) 方法,关闭布局管理器。 调用每一个组件的setLocation()方法决定组件位置。 调用每一个组件的setSize()方法决定其大小。直接管理组件将失去平台无关性。布局管理器种类 FlowLayout: 组件在一行中从左至右水平排列,排满后折行BorderLayout:北、南、东、西、中GridLayo

41、ut:以行和列的网格形式安排组件GridBagLayout:更复杂、功能更强的网格布局CardLayout:每一个组件作为一个卡片,容器仅显示多个卡片中的某一个确定容器布局缺省的布局管理器 Window 、Frame、Dialog BorderLayout Panel 、Applet FlowLayout:选择布局管理器的方法 建立布局管理器类的对象 利用容器的 setLayout 为容器指定布局(即指定一个布局管理器的对象)例:将myFrame布局设定为FlowLayout类型 (new FlowLayout();FlowLayout布局管理器构造函数: FlowLayout() ; FlowLayout(int align, int hgap, int vgap);align :对齐方式:LEFT CENTER RIGHThgap :组件水平间距 (象素)vgap :组件垂直间距无参数的构造函数创建的FlowLayout对象,其对齐方式为CENTER居中方式,组件间的横纵间距都为5个像素。Frame f = new Frame(FlowLayout); (400,300); CardLayout布局管理器 将每一个组件视为一张卡片,同一时刻只能显示一个组件。se

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号