版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、教案2018 -2019 学年第 2 学期课程名称:Java程序设课程代码:适用专业:计算机应用技教师姓名:所属系部: 职称课时:总学时80使用教材: Java 程序设计项目化教程教学单元教案主题课时2任务1安装配置开发环境序号1教学手段多媒体、板书、实训室讲授法、演示法、案例法理论实训一体化(其它)能力目标:能配置典型的java 开发环境、能使用java 开发环境编写Java 程序。教学目标知识目标开发工具的下载、安装与使用;编写、编译和运行Java应用程序的方法;理解字节码及Java 的可移植性原理。素质目标:接受新知识、自主学习的能力 。JDK 的下载、安装和环境配置命令行方式下调试程序
2、教学过程设计备注一. 导入(15 分钟)介绍教师个人信息、联系方式等;JavaJava介绍 Java 程序设计课程的考核等;JavaJava认识,激发兴趣,激发学生学习兴趣。教师活动:PPT 讲解、案例演示;学生活动:听讲记录;时间分配:15 分钟。(601、JavaJavaJavaJVMPPT:5Java性;教师活动:引导;学生活动:讨论;时间分配:52、JDK 的安装及配置 HYPERLINK /technetwork/java/javase/downloads /technetwork/java/javase/downloads JDK,并安装。Path打开【环境变量】面板。点击名为Pa
3、thjdkbinclassPath配:203、命令行方式下调试程序javacjavaHelloWorld.java设置环境变量编译:javacHelloWorld.java运行:javaHelloWorld配:104、Eclipse 的安装、配置及应用 HYPERLINK /downloads /downloadsEclipse,并安装。Eclipse,创建 HelloWorld.java配:105、Myeclipse 的安装、配置及应用 HYPERLINK /softs/75202.html /softs/75202.html装。Myeclipse,创建 HelloWorld.java配:1
4、0三.总结(5 分钟)教师指出学生实践中可能出错和已经出错的地方,结合教学重点和难引用属性与方法; 使用“.”符号分隔路径;使用“”与“”符号标1、分别使用JDK、Myelcipse 编写Java 应用程序输出Hello 作业布置 习完成)。教学反思教学反思教学单元教案主题课时2任务2员工薪酬计算序号2教学手段多媒体、板书、实训室讲授法、演示法、案例法理论实训一体化(其它能力目标:能够使用Java基本语法编写简单的顺序程序。知识目标:标识符的定义规则;关键字的意义;基本数据类型;运算符、表达式和表达式语句;读取输入、格式化输出。素质目标:协调能力、团队合作的能力;接受新知识、自主学习的能力。J
5、ava 基础语法标识符与关键字的区别教学过程设计备注一.导入(5 分钟)介绍员工信息管理系统可以对员工薪酬进行计算。提出本次学习的任PPT配:5二.教学内容1、子任务 1简单的员工薪酬计算(70 分钟)JavaPPT 讲解;学生活动:听讲记录。任务部署:标识符、变量和常量使用 Java 标示符时需要注意以下的规则:JavaabAb标示符由字母、数字、下划线、美元符号组成,没有长度限制。标示符的首字符必须是字母、下划线(_)、美元符($)。标示符不能是 Java 关键字和保留字,但是可以包含关键字和保留字。标示符不能包含空格。标示符只能包含美元符($),不能包含、#等其他特殊符号)数据类型整型:
6、bytebyte8-12(-27)127(27-1)。shortshort16-32768(-215)32767(215-1)。intint32-2147483648(-231)2147483647(231-1)。long:一个 long 型整数在内存中占有 64 位,表示范围是:-92233720368547754775808(-263)92233720368547754775807(263-1)字符型:字符型通常用于表示单个字符,字符常量必须以单引号括起来。Java16UnicodeJava符。字符常量主要有以下 3 种表示方式。直接通过单个字符表示,如a,3和-。通过转义字符表示特殊的字
7、符常量,如t,n和bUnicodeuXXXX,XXXX16数,如u4E2D浮点型:Javafloatdouble。float4;double8浮点数两种表示方式2.24,0.32,12.03.12e2(312)布尔类型:Javaboolean型的变量只能是true和false00boolean 变量不能与整型变量相互转换。运算符.()(方法调用)! + - +(一元运算符)-(一元运算符)()(强制类型转换)new*/%+- = instanceof=!=&| &|?:=+=-=*=/=%=&=|=教师活动:PPT 讲解、提问、演示;学生活动:回答讨论;时间分配:45 分钟。任务实施讲解分析
8、Salary.java:Javapublic classJava且源代码文件必须与这个公有类的名字相同;public static void main(String args)main()方法;main()方法中的内容称为类体。Javapublic class Salary public static void main (String args)double salaryBefore; double salaryAfter; double taxRate;salaryBefore = 5000;taxRate = 0.15;salaryAfter = salaryBefore * (1 -
9、taxRate);System.out.println(税前: + salaryBefore + 元); System.out.println(税率: + taxRate*100 + %); System.out.println(税后: + salaryAfter + 元);210 22简单的员工薪酬计算Java讲解;学生活动:听讲记录。任务部署:读取输入构造一个 Scanner 对象Scanner in = new Scanner ( System.in ); in.nextLine(); 读取一行(包含空格)in.next();只想读取一个单词(以空格作为分隔符) in.nextInt()
10、;读取一个整数in.nextDouble();读取一个浮点数格式化输出采用 NumberFormat 或其子类来对数字进行格式化DecimalFormat df = new DecimalFormat(0000); System.out.println(df.format(12);printf 格式化输出数字或字符教师活动:PPT 讲解、提问、演示;学生活动:回答讨论;时间分配:10 分钟。(4)任务实施讲解分析 Salary.java:Java计算:public class Salary public static void main (String args) double salaryB
11、efore;double salaryBefore;double salaryAfter; double taxRate;Scanner in = new Scanner(System.in);System.out.print(输入税前工资:);salaryBefore = in.nextDouble();System.out.print(输入税率:); taxRate = in.nextDouble();salaryAfter = salaryBefore * (1 - taxRate);System.out.println(税前: + salaryBefore + 元); System.o
12、ut.println(税率: + taxRate*100 + %); System.out.println(税后: + salaryAfter + 元);教师活动:讲解、演示;学生活动:模仿操作;时间分配:5三.总结(5 分钟)学生演示、互评:按照任务要求进行演示并互评。教师点评:根据1、求 1+2+3+4+5*2/3+7-12 的和。作业布置2、2教学反思教学单元教案主题课时2任务3员工薪酬的统计序号3-1教学手段多媒体、板书、实训室讲授法、演示法、案例法理论实训一体化(其它)Java教学目标知识目标:单分支和多分支程序结构;三种循环结构和continue语句的使用方法;一维数组的概念、定义
13、和使用。素质目标:协调能力、团队合作的能力;接受新知识、自主学习的能力。Javabreakcontinue。教学过程设计备注一.导入(5 分钟)二.教学内容(75)1、子任务 1计算税后薪酬Java然后显示计算的结果。教师活动:PPT任务部署:条件语句ifif(condition)statement;if(condition) statement1;else statement2;if statement1;else if statement2;. else statementN;conditionstatement)将多条语句括起来.switch 语句: switch(value)case
14、value1:statement1; break;case value1:statement1; break;.case valueN:statementN; break;default:defaultStatement;使用 switch 时注意事项:valuechar、byte、shortintcase 语句对应的 valueN 值必须是常量,而且各个 valueN 应该不相同。break 语句用来在执行完相应的case 分支语句后跳出switch 语句,casebreakdefault 是可选的,当 value 的值与所列的 valueN 的值都不匹配的时候,就会执行defaultdde
15、faultswitch教师活动:PPT 讲解、提问、演示;学生活动:回答讨论;时间分配:20 分钟。任务实施讲解分析 CalcSalary:ifpublic class Salary public static void main (String args)double salaryBefore; double salaryAfter; double taxRate;salaryBefore = 5000;taxRate = 0.15;salaryAfter = salaryBefore*(1 - taxRate);System.out.println(税前:+salaryBefore + 元
16、);System.out.println(税率:+taxRate*100 + %);System.out.println(税后:+salaryAfter + 元);20 32员工工资排序任务预览:编写一个Java10PPT听讲记录。任务部署:循环语句while 循环:while (condition) statement;whiletrue(个语句块)conditionfalse,会执行。do/while 循环:do statement while (condition); do/while 循环语句至少执行一次。for 循环:for (int i = 1; i = 10; i+) Syste
17、m.out.println(i);for数器或类似的变量来控制迭代次数。for 语句的第一部分通常用于对计数器的初始化;第二部分给出循环继续执行的条件;第三部分指示如何更新计数器。教师活动:PPT 讲解、提问、演示;学生活动:回答讨论;时间分配:20 分钟。跳转语句break 语句:breakswichswitch句。在实际中我们更多的是使用它来跳出循环。continue 语句:Javacontinuebreakcontinue移到最内层循环的首部。return 语句:return 语句用在方法中,用于终止当前方法的执行,返回到调用该方法的语句处。return expression;retur
18、n expression;教师活动:PPT 讲解、提问、演示;学生活动:回答讨论;时间分配:10 分钟。三.总结(5 分钟)学生演示、互评:按照任务要求进行演示并互评。教师点评:根据作业布置1、求 100200 之间的所有素数,并计算它们的和。2、用嵌套的for 循环语句改写例 2-10 乘法九九表程序。教学反思教学单元教案主题课时2任务3员工薪酬的统计序号3-2教学手段多媒体、板书、实训室讲授法、演示法、案例法理论实训一体化(其它)Java教学目标知识目标:单分支和多分支程序结构;三种循环结构和continue语句的使用方法;一维数组的概念、定义和使用。素质目标:协调能力、团队合作的能力;接
19、受新知识、自主学习的能力。教学重点教学难点一.教学内容1、数组Java 的分支语句;循环控制语句;数组的定义和使用breakcontinue。教学过程设计备注数组的申明和内存的分配:数据类型 数组名; / 声明一维数组数组名 = new 数据类型个数; / 分配内存给数组数组中元素的表示:想要使用数组里的元素,可以利用索引来完成。Java01salary12素,salary 910数组的初始化:数据类型 数组名= 初值 0,初值 1,初值 n数组排序:Arrayssort需要在import java.util.Arrays。教师活动:PPT 讲解、提问、演示;学生活动:回答讨论;时间分配:40
20、 分钟。任务实施讲解分析 SalarySort.java:分析任务,首先我们需要保存10酬都定义一个变量就太麻烦了,因此我们可以定义一个数组来存储员工的Arraysort()对数组进行排序。forsort“for each”排序public class SalarySort public static void main (String args)int salary = new int10;for (int i = 0; i salary.length; i+) salaryi = (int)(Math.random() * 10000);Arrays.sort(salary);for (i
21、nt element:salary) System.out.println(element);35三.总结(5学生演示、互评:按照任务要求进行演示并互评。 教师点评:根据作业布置1、求 100200 之间的所有素数,并计算它们的和。2、用嵌套的for 循环语句改写例 2-10 乘法九九表程序。教学反思教学单元教案主题课时2任务4面向对象的员工薪酬统计序号4-1教学手段多媒体、板书、实训室讲授法、演示法、案例法理论实训一体化(其它)能根据实际应用环境定义类和对象教学目标知识目标类和对象的概念及其关系;类的定义格式、类的域、构造方法、一法;方法重载和覆盖;抽象类和接口的使用。素质目标:协调能力、团
22、队合作的能力;接受新知识、自主学习的能力。类的定义和使用;方法的定义和使用;构造方法;方法的覆盖和重载;关键字this 的用法;继承的概念和应用;抽象方法和抽象类。构造方法;方法的覆盖和重载;继承的概念和应用;组合与继承;抽象方法和抽象类。教学过程设计备注一.导入二.教学内容1、子任务 1Employee 类的实现任务预览:按要求定义一个Employeename和 salary。包含无参数的构造函数和三个参数的构造函数,还包含一个print(姓名,ID)义两个员工对象,一个使用无参数的构造方法,然后使用setXXX()PPT学生活动:听讲记录。任务部署:面向对象程序设计概述对象:对象的行为(b
23、ehavior)可以对对象实施的操作,或对象所具有的功能。对象的属性(attribute)类:封装性类类的定义: class 类名称数据类型 属性名;.;返回值类型 方法名称(参数 1, 参数 2, .)程序语句;.;return 表达式;类的封装:语言用包将各种类组织在一起,将一个类归到某一个包中,只需要在源文packagepackage 包 1.包 2.包 3 ; /表示可选会编译出错。import 包 1.包 2.包 3.类名|* ; /*表示引用该包下的所有类importimport java.util.List;构造方法及其重载构造方法所完成的主要工作是帮助新创建的对象赋初值(也称构
24、造函数)。class 类名称访问权限类名称(类型 1 参数 1,类型 2 参数 2,)程序语句;. / 构造方法没有返回值在使用构造方法的时候需要注意: 它与类具有相同的名称。它没有返回值。public。教师活动:PPT 讲解、提问、演示;学生活动:回答讨论;时间分配:40 分钟。任务实施讲解分析 Employee.java:EmployeemainEmployeepublic class Employee private String private String id; private int salary;public Employee() = ;this.id= ; this.sala
25、ry = public Employee(String name, String id, int salary) = name;this.id= id; this.salary = public void setName(String name) = name;public void setId(String id) this.id = id;public void setSalary(int salary) this.salary = salary;public void print() System.out.println(姓名:t + System.out.println(id:t +
26、id);System.out.println(salary:t + salary);public static void main (String args) Employee employee1 = newEmployee(Tom, 90234, Employee employee2 = new Employee(); employee2.setName(Billy);employee2.setId(82356); employee2.setSalary(8000); System.out.println(employee1.print(); System.out.println(emplo
27、yee2.print();三.总结(5 分钟)学生演示、互评:按照任务要求进行演示并互评。教师点评:根据作业布置1、定义子类,实现临时的职工和合同制的职工薪酬计算。教学反思教学单元教案主题课时2任务4面向对象的员工薪酬统计序号4-2教学手段多媒体、板书、实训室讲授法、演示法、案例法理论实训一体化(其它)能根据实际应用环境定义类和对象教学目标知识目标类和对象的概念及其关系;类的定义格式、类的域、构造方法、一法;方法重载和覆盖;抽象类和接口的使用。素质目标:协调能力、团队合作的能力;接受新知识、自主学习的能力。类的定义和使用;方法的定义和使用;构造方法;方法的覆盖和重载;关键字this 的用法;继
28、承的概念和应用;抽象方法和抽象类。构造方法;方法的覆盖和重载;继承的概念和应用;组合与继承;抽象方法和抽象类。教学过程设计备注一.教学内容1、子任务 2实现子类任务预览:我们实现了Emplyee分为临时的职工和合同制的职工。临时的职工的薪水按天数计算,合同制的员工工资按月数计算。合同制的员工会有一定的奖金,而临时的职工没有。 但是临时职工和合同制职工还有很多相同的属性(姓名、ID 等)。教师活动:PPT 讲解;学生活动:听讲记录;时间分配:5 分钟。任务部署:类的层次结构Javaclass 父类 / 定义父类class 子类 extends 父类 / 用 extends 关键字实现类的继承构造
29、方法的继承子类构造函数的第一行默认隐含了一个“super()”语句。super 关键字调用和访问父类的其它方法和属性。super.父类中的属性; super.父类中的方法();super构造方法的首行。阻止类的继承finalfinal如下:final class Student.类中的方法也可以申明为 final。这样的话,子类就不能覆盖这个方法。(final 类中的所有方法自动生成为 final 方法)。final class Student.public final String getName() return name;.教师活动:PPT配:45任务实施讲解分析 Person.java
30、: public class Person String name;int age;int age;public Person()System.out.println(父类构造函数);讲解分析 Student.java:public class Student extends Personint stuId;public Student()System.out.println(子类构造函数);public static void main (String args)Student stu = new Student();二.总结(5学生演示、互评:按照任务要求进行演示并互评。教师点评:根据作业
31、布置1、定义子类,实现临时的职工和合同制的职工薪酬计算。教学反思教学单元教案主题课时2任务4面向对象的员工薪酬统计序号4-3教学手段多媒体、板书、实训室讲授法、演示法、案例法理论实训一体化(其它)能根据实际应用环境定义类和对象教学目标知识目标类和对象的概念及其关系;类的定义格式、类的域、构造方法、一法;方法重载和覆盖;抽象类和接口的使用。素质目标:协调能力、团队合作的能力;接受新知识、自主学习的能力。类的定义和使用;方法的定义和使用;构造方法;方法的覆盖和重载;关键字this 的用法;继承的概念和应用;抽象方法和抽象类。构造方法;方法的覆盖和重载;继承的概念和应用;组合与继承;抽象方法和抽象类
32、。教学过程设计备注一教学内容1、子任务 3多态2PPT 讲解;学生活动:听讲记录;时间分配:5任务部署:方法的重构与重载如果子类中的某个方法与其父类具有相同的名称和参数(个数和类型都相同),则称该子类重构了该方法(overriding),重构也称为覆盖。这样父类定义的方法在子类就“看不见”了,当子类的这一方法被调用的时候,将直接使用子类定的方法。如果在同一个类中定义了多个同名的方法,它们或有不同的形参个数或有不同的形参类型,则称该方法为被重载(Overloading)。在调用时,Java 将根据实参个数或实参类型选择匹配的方法。有关方法重构的规定的类型相同;子类不能重构父类的 final 和
33、private 方法;staticstaticstatic子类方法重构父类方法时,子类方法的访问权限修饰符不能严于父类方法的访问修饰符;子类若要引用父类中被重构的方法,应使用“super.方法名”的方式;教师活动:PPT 讲解、提问、演示;学生活动:回答讨论;时间分配:30 分钟。任务实施讲解分析 Animal.java:public abstract class Animal public abstract void bark();讲解分析 Cat.java:public class Cat extends Animal public void bark() System.out.print
34、ln(喵喵);讲解分析 Dog.java:public class Dog extends Animal public void bark() System.out.println(汪汪);讲解分析 TestAnimal.java:public class TestAnimal public static void main (String args)Animal animal = new animal.bark();animal = new animal.bark();教师活动:讲解、演示;学生活动:模仿操作;时间分配:30 分钟抽象类和抽象方法总结归纳 Animal 类的特点,从而引申出抽
35、象类和抽象方法。抽象类和抽象方法Java有通用性和更加的抽象,有时由于对象高级抽象的需要,我们需要类只是申明方法的首部,而不需要说明其方法的主体,其主体部分由子类来完成。Javaabstract是,由于抽象类的抽象性,因此其不能创建任何的对象,抽象类只是用来被其子类继承。抽象类的定义规则抽象类和抽象方法必须由 abstract 关键字来修饰。new抽象的方法主需要申明,不需要具体的实现。类的所有抽象方法后才能被实例化,否则这个子类还是抽象类。抽象类中除了抽象方法外,也可包含具体的数据和具体的方法。抽象类的定义格式abstract class 类名称/定义抽象类申明数据成员;访问权限 返回值数据
36、类型 方法名称 (参数.) /普通的方法.访问权限 abstract/方法AnimalAnimalabstract,barkpublic abstract class Animal public abstract void bark();二.总结(5学生演示、互评:按照任务要求进行演示并互评。教师点评:根据作业布置1、定义子类,实现临时的职工和合同制的职工薪酬计算。教学反思教学单元教案主题课时2任务4面向对象的员工薪酬统计序号4-4教学手段多媒体、板书、实训室讲授法、演示法、案例法理论实训一体化(其它)能根据实际应用环境定义类和对象教学目标知识目标类和对象的概念及其关系;类的定义格式、类的域、
37、构造方法、一法;方法重载和覆盖;抽象类和接口的使用。素质目标:协调能力、团队合作的能力;接受新知识、自主学习的能力。类的定义和使用;方法的定义和使用;构造方法;方法的覆盖和重载;关键字this 的用法;继承的概念和应用;抽象方法和抽象类。构造方法;方法的覆盖和重载;继承的概念和应用;组合与继承;抽象方法和抽象类。一教学内容14接口教学过程设计备注Java录;时间分配:5任务部署:接口的定义格式interface 接口名称 /定义接口final 数据类型 成员名称 = 常量;/数据成员必须赋初值abstract 返回值数据类型 方法名称 (参数.);接口的使用规则接口里的数据成员必须初始化,且数
38、据成员均为常量。接口里的方法必须全部声明为 abstract,也就是说,接口不能像抽象类一样保有一般的方法,而必须全部是“抽象方法”。与类不同,接口中的所有方法自动属于 public,因此在接口中申明方法的时候,不必提供关键字 public。接口的实现接口的声明仅仅给出了抽象方法,而具体地实现接口所定义的方法需要某个类为接口中的每个抽象方法定义具体的操作。在类的声明部分,用implements 关键字来声明这个类实现某个接口,一个类可以实现多个接口,在 implements 子句中用逗号隔开。实现接口的语法格式如下class 类名称 implements 接口A, 接口B/接口的实现.接口的继
39、承interface 子接口名称 extends 父接口 1, 父接口 2, .教师活动:PPT配:45任务实施讲解分析 Person.java: interface CalcAreafinal double PI = 3.1415926; double calcArea(double r);class Circle implements CalcAreapublic double calcArea(double r)return PI * r * r;public class TestInterface public static void main (String args)Circle
40、cir = new Circle(); System.out.println(Area: + cir.calcArea(3);教师活动:讲解、演示;学生活动:模仿操作;时间分配:25三.总结(5学生演示、互评:按照任务要求进行演示并互评。教师点评:根据作业布置1、定义子类,实现临时的职工和合同制的职工薪酬计算。教学反思教学单元教案主题课时2任务5异常的处理序号5教学手段多媒体、板书、实训室讲授法、演示法、案例法理论实训一体化(其它)能力目标:能够利用Java 异常处理机制处理程序中的异常。知识目标:熟悉异常类的层次结构,能够区别 Error 类和异常Exception 及其教学目标处理;了解J
41、ava的异常处理机制;掌握在程序中使用try-catch-finally句结构处理异常的方法;掌握异常的声明和抛出;掌握自定义异常的方法。 素质目标:协调能力、团队合作的能力;接受新知识、自主学习的能力。异常处理语句Java 的异常处理机制、异常的声明和抛出及自定义异常的方法教学过程设计备注一.导入理。 教师活动:PPT2二.教学内容1、子任务 1员工编号异常处理任务预览:设定员工的ID5PPT动:听讲记录;时间分配:3任务部署:异常的基本概念异常Java 程序可以用代码来处理异常并继续执行程序,而不是让程序中断。Javatry / try 语句块要检查的程序语句;.catch (异常类 对象
42、名称) / catch 语句块异常发生的处理语句;finally/finally一定会运行到的代码;try 语句块中若是有异常发生,则程序运行中断,并抛出异常类产生的对象。catch()catchcatchfinally 语句块一般是用来处理一些资源释放之类的事情,无论是finallyfinally异常类的层次Throwablejava.1angExceptionErrorErrorException异常的抛出在程序中抛出异常: throw 异常类实例对象;throw指定方法抛出异常:方法名称 (参数.) throws 异常类 1, 异常类 2, .如果方法内的程序代码可能会发生异常,且方法内
43、又没有使用任何的代码块来捕捉这些异常时,则必须在声明方法时一并指明所有可能发生的异常,以便让调用此方法的程序得以做好准备来捕捉异常。自定义异常Java行错误。如果某个应用程序有特殊的要求,则可能出现系统不能识别的运行错误,这时,用户就需要自己创建异常和异常类,使系统能够识别这种错误并进行处理,以增强用户程序的健壮性和容错性,从而使系统更加稳定。Throwable定义自己的异常类的格式语法如下class 异常名称 extends Exception.教师活动:PPT 讲解、提问、演示;学生活动:回答讨论;时间分配:45 分钟。任务实施讲解分析 Employee.java: package Tes
44、tEmployee;public class Employee String id;String name;public Employee(String id, String name) if (id.length() != 5)throw new IllegalArgumentException(ID 的长度应this.id = id; = name;public String getId() return id;public String getName() return name;public void print() System.out.println(ID: + id + n 姓名
45、: + name);TestEmployee.java package TestEmployee;public class TestEmployee public static void main (String args)Employee employee = new Employee(1002, 张三); employee.print();System.out.println(employee instanceof Employee);25三.总结(5 分钟)学生演示、互评:按照任务要求进行演示并互评。 教师点评:根据从键盘接收输入的 5 个学生的成绩,计算平均分。自定义两个异常类分别处理
46、作业布置入成绩时可能出现的情况一个是 NumException 类用来处理当成绩为负数时所引发的异常,其中MaxException 类用来处理当成绩超过 100 分时所引发的异常。教学反思教学单元教案主题课时2任务6图形化员工信息管理系统序号6-1教学手段多媒体、板书、实训室讲授法、演示法、案例法理论实训一体化(其它能力目标:图形界面设计;图形界面编程技巧。知识目标:了解 AWT 和 Swing 的区别和联系;掌握容器的概念及其分类; 掌握容器 JFame、JPanel、JDialog 的使用;掌握组件 JButton、JLabel、JTextFiled、JTextArea 和 JPasswo
47、rdField 的使用;掌握将组件添加到容器中方法。素质目标:顶层容器和中间容器,组件的属性和常用方法。区分中间容器与顶层容器,利用容器布局组件。教学过程设计备注一.导入Java(字符方式而应用最为广泛的还是图形用户界面的设计(图形方式)。 讨论过去使Java3二.教学内容1、子任务 1简单的图形化界面PPT2任务部署:AWTSwingAWT(AbstractWindowToolkit) 提供了基本AWT(依赖本地平台AWTjava.awtSwingGUIJava何与平台有关的本地代码。SwingSwing 组SwingAWT 组件更强的功能。常用的 Swing 容器类和 Swing 的常用组
48、件详细介绍容器类组件是用来包含其他组件的。JComponentSwing的超类。SwingAWTWindow。SwingJFrame、JPanel、JAplpletSwingJButton、JTextField、JTextArea、JLabel教师活动:PPT 讲解、提问、演示;学生活动:回答讨论;时间分配:45 分钟。任务实施讲解分析 TestTableModel.java: package TestJTable;import java.awt.*; importjava.awt.event.*; importjava.util.Vector; import javax.swing.*;im
49、port javax.swing.table.*;public class TestTableModel extends JFrame JButton addBtn = new JButton(添加);finalSalaryTableModeltableData=SalaryTableModel();JTable table = new JTable(tableData);public TestTableModel() super(TestTableModel);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setBound
50、s(100, 100, 300, 300); this.setVisible(true);this.add(new BorderLayout.CENTER);JScrollPane(table),addBtn.addActionListener(new ActionListener() publicvoidactionPerformed(ActionEventevent)tableData.addData(10001, 张三, 3000););this.add(addBtn, BorderLayout.SOUTH);public static void main (String args) n
51、ew TestTableModel();class SalaryTableModel extends AbstractTableModelprivateVectoridData=Vector();private Vector();VectornameData=newprivateVectorsalaryData=newVector(); private String columnName = ID, Name, Salary; public int getRowCount() return idData.size();public int getColumnCount() return 3;p
52、ublic Object getValueAt(int row, int col) if (col = 0) return idData.elementAt(row);else if (col = 1) return nameData.elementAt(row); else return salaryData.elementAt(row);public String getColumnName(int col) return columnNamecol;public void addData(String id, String name, int salary)idData.addEleme
53、nt(id); nameData.addElement(name); salaryData.addElement(Integer.toString(salary); fireTableDataChanged();讲解分析 SimpleTable.java package TestJTable;import java.awt.BorderLayout; import java.awt.event.ActionEvent;import java.awt.event.ActionListener; import javax.swing.*;public class SimpleTable exten
54、ds JFrame private Object data =10001,张三,3000,10002,李四,4000,10003,王五,5000,10004,小明,5000,10005,小张,5000,;private String columnNamesID, Name,Salary; JButton printButton = new JButton(打印);JPanel btnPanel = new JPanel(); public SimpleTable() super(SimpleTable); this.setBounds(100, 100, 300, 300);final JTa
55、ble table = new JTable(data, columnNames);this.add(new BorderLayout.CENTER);JScrollPane(table),printButton.addActionListener(new ActionListener()public void actionPerformed(ActionEvent event)try table.print();catch (java.awt.print.PrinterException e) System.out.println(e.getMessage(););btnPanel.add(
56、printButton); this.add(btnPanel, BorderLayout.SOUTH); this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);public static void main (String args) new SimpleTable();25三.总结(5学生演示、互评:按照任务要求进行演示并互评。 教师点评:根据作业布置1、设计用户登录界面并加入图片进行适当的修饰,设置相关内容的字体、颜色,使得界面显示美观大方。教学反思教学单元教案主题课时2任务6图形化员工信息管理
57、系统序号6-2教学手段多媒体、板书、实训室教学目标一.教学内容讲授法、演示法、案例法理论实训一体化(其它能力目标:图形界面设计;图形界面编程技巧。知识目标:了解 AWT 和 Swing 的区别和联系;掌握容器的概念及其分类; 掌握容器 JFame、JPanel、JDialog 的使用;掌握组件 JButton、JLabel、JTextFiled、JTextArea 和 JPasswordField 的使用;掌握将组件添加到容器中方法。素质目标:顶层容器和中间容器,组件的属性和常用方法。区分中间容器与顶层容器,利用容器布局组件。教学过程设计备注1、子任务 1简单的图形化界面SwingSwingP
58、PT 讲解;学生活动:听讲记录;时间分配: 分钟。任务部署实现简单的图形化界面:讲解分析 TestTableModel.java: package TestJTable;import java.awt.*; importjava.awt.event.*; importjava.util.Vector; import javax.swing.*;import javax.swing.table.*;public class TestTableModel extends JFrame JButton addBtn = new JButton(添加);finalSalaryTableModeltab
59、leData=SalaryTableModel();JTable table = new JTable(tableData);public TestTableModel() super(TestTableModel);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setBounds(100, 100, 300, 300); this.setVisible(true);this.add(new BorderLayout.CENTER);JScrollPane(table),addBtn.addActionListener(ne
60、w ActionListener() publicvoidactionPerformed(ActionEventevent)tableData.addData(10001, 张三, 3000););this.add(addBtn, BorderLayout.SOUTH);public static void main (String args) new TestTableModel();class SalaryTableModel extends AbstractTableModelprivateVectoridData=Vector();private Vector();Vectorname
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论