JAVA面向对象程序的设计教(学)案_第1页
JAVA面向对象程序的设计教(学)案_第2页
JAVA面向对象程序的设计教(学)案_第3页
JAVA面向对象程序的设计教(学)案_第4页
JAVA面向对象程序的设计教(学)案_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

./西南财经大学天府学院教案任课教师:贾砚池课程名称:面向对象程序设计<Java>任课班级:13级专科计算机01班、13级专科网络01班、13级专科软件01班

授课时间:2013-2014-2学期西南财经大学天府学院教务处制教案编号:1章节JavaSE程序设计与实践的考核方式和Java简介授课方式讲授+讨论+上机教学目的掌握本课程的考核方式、即将要学习的内容以及相关的课堂纪律.了解课程整体目标.了解Java语言.了解Java程序的类型.理解Java虚拟机〔JVM.掌握Java程序运行环境的配置,能够独立完成.培养学生实际动手能力<自主安装JDK以及配置环境变量>.培养学生自主解决问题的能力.教学重点环境变量的配置和编译源文件以及Java程序打包.教学难点环境变量的配置和编译源文件以及Java程序打包.时间分配教学过程Min105155101015253060考核方式<讲授>考核分为两部分:第一部分:平时,占60%;其中,考勤:10%;平时作业或项目:40%,包括2次大型的作业任务,每次任务各占15%,2次及以上小型作业任务,占10%.根据项完成的程度和质量,由老师评分,未交者得零分;平时表现分:10%,包括课堂纪律、上课积极的参与讨论、主动回答问题及上台演示和讲解程序的编写、小组作业时候的团队协作能力<由组长评分>.第二部分:期末项目,占40%;一次大型项目,由小组完成.旷课3次取消考试资格,迟到3次算一次旷课.每迟到一次扣1分,旷课一次扣5分,期末全勤可加2分.课堂内看视频、玩游戏,第一次扣5分,第二次扣10分,第三次扣20分,如果超过4次者,直接取消该科的考试资格.课堂纪律<讲授>上课不准吃零食、嗑瓜子等.下课后带走自己桌上的垃圾,让课桌上保持整洁.下课后关电脑<主机和显示器>.上课不准大声喧哗、玩手机、pad、睡觉等与学习无关的事情.教师信息及答疑时间设定<讲授>学习小组的成立以及成员之间讨论<讨论>自由分组,每个组4-6人,并选定组长,然后为每个组安排好上机位置<小组成员必须坐在一起>,以后就固定座位.小组讨论:互相认识,加深了解,了解各自的兴趣和长项.选取一个同学为小组长.探讨学习本课程的方法,并由小组长向老师汇报本次讨论的结果.Java语言简介Java是一种程序设计语言,由SunMicrosystem公司于1995年推出;早在1991年,Sun公司的JamesGosling等人开始开发名为Oak的程序设计语言,希望用来控制嵌入在有线电视机顶盒和PDA等设备中的微处理器;1994年,Oak语言正式更名为Java;Java语言凭借其独有的安全性、可移植性和平台无关性,迅速走红.Java可以做什么?<学生查询资料>由学生自助通过各种方式查询资料,然后老师随机抽取1-3名同学回答.Java虚拟机<讲授>Java虚拟机〔JavaVirtualMachine是可运行Java字节码的虚拟计算机系统.使用Java语言编写的程序,实际上是运行在JVM之上,而不是运行在操作系统上.它有一个解释器组件,可以实现Java字节码和计算机操作系统之间的通信.开发Java程序的步骤<讲授>创建Java源程序Java源程序可以使用任何文本编辑器创建与编辑,一般用.java作为扩展名,其实就是一个使用Java语言编写的文本文件;编译源程序Java编译器读取Java源程序并翻译成Java虚拟机能够明白的指令集合,并以字节码的形式保存在文件中,通常,字节码文件以.class作为扩展名;运行class〔字节码文件Java解释器读取字节码文件,取出指令并翻译成计算机能够执行的机器代码,完成运行过程.编写第一个Java程序<讲授+演示>打开记事本,新建一个文本文件,将文件名改为Hello.java,在文件中键入如下内容并保存:classHello{publicstaticvoidmain<String[]args>{System.out.println<"Helloworld!">;}}使用javac编译器编译源文件..class〔字节码文件.使用java解释器运行字节码文件.分析程序<讨论+讲授>分组讨论,然后由每个组轮流发言;最后由老师总结.关键字class用来定义一个类,Hello是类的名称;在Java程序中,所有的语句都必须放在某个类中;整个类及其所有成员都包含在一对花括号中〔即{和}之间,它们标志着类定义块的开始和结束.定义类的一般语法:class类名 { …… }程序必须从main函数开始执行;关键字public是访问修饰符,用来控制类成员的可见范围及作用域;关键字static允许在不创建类的实例的情况下,调用main函数;关键字void用来说明main函数是没有返回值的;args是字符串数组,用来从命令行接收参数;String[]是字符串类型的数组;在Java中,类名称一般首字母大写;使用System.out.println<>将信息输出到控制台上,即打印出来.上机实验安装JDK.进行环境变量的配置.安装Eclipse.熟悉Eclipse开发环境.作业布置编程输出以下信息*********************************************欢迎进入Java编程世界*********************************************课后预习Java语言基础<Java的基本数据类型、操作符、关键字、流程控制>.课后总结所有的同学都掌握了本门课程的考核方式.通过分组学习,同学之间有问题可以互相帮助,学生学习积极性很高,并且通过小组组长的汇报,一部分学习方法较好的同学的经验,得以在全班同学之间共同分享,效果很好.80%的同学都能够独立完成Java开发环境的搭建以及配置.由于前面有C语言的学习基础,70%以上同学对Java程序结构的理解都不存在问题.整体来说,效果良好.教案编号:2章节Java语言基础流程控制—分支语句授课方式讲授+学生实验+讨论教学目的掌握Java中的变量和数据类型.掌握Java中变量的作用域规则.掌握数据类型转换.掌握Java中的运算符和表达式.掌握选择结构的几种实现方式;并能够独立的应用它们来编写程序.培养学生主动思考问题的能力.培养学生表达能力.培养学生实际动手操作能力.教学重点Java的基本数据类型、引用类型以及变量的作用域.分支语句.教学难点引用类型以及变量的作用域.分支语句.时间分配教学过程Min108090作业点评<学生阐述+老师总结>方式:由出现程序问题的同学讲出自己出现的问题以及解决方式,最后由老师总结.类名不规范、代码排版不规范.public中的p出现大写情况;static关键字丢失;main出现mian;String中的S未大写;System中的s出现了小写.printf以及println,print输出格式混淆.{}不匹配或者丢失.抽查上周布置的课后作业,抽查2-5个同学来阐述Java的基本数据类型、操作符、关键字.<学生阐述+老师讲授>标识符命名规则变量、函数、数组、对象、类和接口等等都需要命名,这些名称统称为标识符;Java中对于标识符的命名规则作了如下限制:只能由英文字母、数字、下划线"_"和"$"符号组成.必须以英文字母、"_"或"$"开头,即不能以数字开头.除"_"和"$"以外,不能包含其它任何特殊字符.不能与关键字冲突.严格区分大小写.Java中的关键字:abstract、boolean、break、byte、case、catch、char、class、continue、do、double、else、enum、extends、false、find、finally、float、for、implements、import、instanceof、int、interface、long、native、new、null、package、private、protected、public、return、short、static、super、switch、synchronized、this、throw、throws、true、try、void、while数据类型变量的作用域和生命周期变量的作用域指变量起作用的范围,说明变量在什么部分可以被访问;变量的生命周期是指变量在内存中存在的周期,即什么时候分配空间,什么时候销毁;运算符和表达式算术运算符关系运算符逻辑运算符条件运算符赋值运算符选择结构if语句if…else语句if…elseif语句switch…case语句学生实验<上机+老师指导>输入一个"男"或者"女",对应输出"M"和"F".写程序,若星期一到星期五,则打印出"工作快乐",若星期六、星期天则输出"周末更快乐".输入一个分数,输出对应的等级:60以下E60-70D70-80C80-90B90–100A作业布置输入三个数字,最后从小到大输出排序.课后预习循环结构的几种语句以及数组的定义.课后总结通过学生自己对出现问题的总结和老师的总结,80%以上的同学对常见问题的解决方法有了一个深刻的认识.通过三个上机程序,加深了对循环结构的认识.但是依然有约20%的同学对if和switch的用法还不能掌握,需加强程序上机的编写.教案编号:3章节流程控制—循环语句数组授课方式讲授+上机教学目的掌握循环语句的使用.掌握数组的声明以及运用.培养学生主动性和积极性.培养学生的逻辑思维能力.教学重点循环语句.数组、哈希表.教学难点循环语句.数组、哈希表.时间分配教学过程Min1060110作业点评<学生阐述+老师总结>方式:由3-5个同学来讲述上周作业的实现思路,最后由老师总结出现的一些问题.类名不规范运算符的运用部分算法的不科学性抽查上周布置的课后作业,抽查1-3个同学来阐述循环结构的几种语句以及数组的声明.<学生阐述+老师讲授>循环语句Whileinti=0; while<i++<3>System.out.println<i>;Do……while语句inti=1; do{System.out.println<i>;}while<i++<3>;For语句for<inti=1;i<=3;i++>System.out.println<i>;流程控制语句break:从switch语句、循环语句或标号标识的代码块中退出.以下while循环用于把1加到100:inta=1,result=0;one:while<true>{result+=a++;if<a==101>breakone;//终止循环}System.out.println<result>;//打印5050continue:跳过本次循环,执行下一次循环,或执行标号标识的循环体.以下for循环用于对1到100之内的奇数求和:intresult=0;for<inta=1;a<=100;a++>{if<a%2==0>continue;//如果a是偶数,就跳出本次循环,继续执行下次循环elseresult+=a;}System.out.println<result>;//打印2500讨论:判断下面程序执行了多少次?classTest{publicstaticvoidmain<String[]args>{ inti=0; while<i<10>{ if<i<10>{ i++;continue; } if<i==5>{ break; } } System.out.println<i>; }}Java中声明数组的几种方式//仅声明数组的引用,但没有分配内存空间float[]fAry;//声明数组的同时,根据指定的长度分配内存,但数组中没有值char[]chAry=newchar[10];//声明数组并分配内存,同时将其初始化int[]ary1=newint[]{1,2,3,4,5};//与前一种方式相同,仅仅只是语法相对简略int[]ary2={1,2,3,4,5};学生实验<上机>[练习题一]编写Java程序,计算100~999之间的全部"水仙花数"的平均值.所谓"水仙花数"是指一个三位数,其各位数字的立方和等于该数本身.例如:153=1^3+5^3+3^3,故153是水仙花数.[练习题二]编写一个Java程序,要求在控制台上打印出九九乘法表,效果应如下所示:1*1=1,1*2=2,2*2=4,1*3=3,2*3=6,3*3=9,1*4=4,2*4=8,3*4=12,4*4=16,1*5=5,2*5=10,3*5=15,4*5=20,5*5=25,1*6=6,2*6=12,3*6=18,4*6=24,5*6=30,6*6=36,1*7=7,2*7=14,3*7=21,4*7=28,5*7=35,6*7=42,7*7=49,1*8=8,2*8=16,3*8=24,4*8=32,5*8=40,6*8=48,7*8=56,8*8=64,1*9=9,2*9=18,3*9=27,4*9=36,5*9=45,6*9=54,7*9=63,8*9=72,9*9=81,[练习三]1.打印如下图型:*************2.************作业布置一个小球从100米处落下,每次弹起是原来的一半,问弹起第二十次落下后所经过的米数.课后总结通过这三周的程序编写和讲解,发现50%的同学对选择结构和循环结构的熟练程序还不够,对一些算法的实现还存在很大的问题,逻辑思维能力较弱.因此接下来的1-2周,决定采用大量的例子程序进行上机练习,然后由老师以及学得比较好的同学进行辅导,为后面的面向对象编程的一些概念打下基础.教案编号:4章节程序上机练习授课方式讲授+上机教学目的掌握分支语句、循环语句、数组的用法;加深对变量以及数组声明等用法的理解和使用.培养学生的逻辑思维能力.培养学生的实际动手能力.培养学生分析问题的能力.教学重点分支语句、循环语句.教学难点分支语句、循环语句.时间分配教学过程Min20160作业点评<学生阐述+老师总结>方式:由3-5个同学来讲述上周作业的实现思路,最后由老师总结出现的一些问题.类名不规范运算符的运用部分算法的不科学性上机实验实现方式:<一>由老师给出程序片段,由学生完成关键部分的填写,最后让学生独立运行程序.<二>让个别同学来讲解整个程序的实现思路,最后由老师总结.求1000以内的素数〔素数:只能除开1和本身的数已知某年某月某日,从该年的1月1日开始3天打渔2天晒网,求该日是打渔还是晒网〔思路,先求出该天是该年的第几天编写一个程序实现将任意一个十进制数转换成二进制形式输出如10输出形式为0000000000...00000001010一个小球从100米处落下,每次弹起是原来的一半,问弹起第二十次落下后所经过的米数.求任意两个整数的最大公约数和最小公倍数输出九九乘法表<两层for循环求1000以内的水仙花数〔如153=1^3+5^3+3^3已知一个正整数,输出它的所有质数因子〔如180的质数因子为2、2、3、3、5.作业布置求1!+3!+5!+…+9!的值求1+1/2+1/6+1/12+1/20+….前10项的和课后总结通过程序片段的方式,80%以上的同学都能够很好的完成最后的关键部分填写;这样的方式对于程序的初学者来说是一个很好的入门方式;在降低难度的同时还促进了学生的主动思考和分析问题的能力.教案编号:5章节授课方式教学目的教学重点教学难点时间分配教学过程国庆放假作业布置课后总结教案编号:6章节程序上机练习授课方式讲授+上机教学目的掌握循环结构、选择结构的用法;加深对变量以及数组声明等用法的理解和使用.培养学生的逻辑思维能力.培养学生的实际动手能力.培养学生的团队意思.教学重点分支语句、循环语句.教学难点分支语句、循环语句.时间分配教学过程Min30150作业点评<学生阐述+老师总结>方式:由3-5个同学来讲述上周作业的实现思路,最后由老师总结出现的一些问题.上机实验<上机+指导>实现方式:由学生独立完成,老师从旁指导.对于复杂的程序由小组讨论:如第六个小题.在写程序的同时也增加了趣味性.万年历〔周几的判断规则是〔年+年/4+年/400-年/100%7求1!+2!+3!+4!+...+9!的值求1+1/2+2/3+3/5+5/8+前10项的和求Fibonacci数列:1,1,2,3,5,8,的前40项并输出编写一个程序,打印出1233455676789海滩上有一堆桃子,五只猴子来分.第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份.第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?桃子的个数有多少种可能?写一段程序,定义int型变量代表month月份,并赋给初值,根据月份判断出这个月是四季中的哪个季节?不是一年12个月份的月份,输出"错误月份";给一个不多于5位的正整数,要求:一、输出它是几位数,二、逆序打印出各位数字.作业布置编写程序,打印出123456789101112131415课后预习面向对象编程的概念.课后总结通过两周的课堂编程练习以及老师的指导和讲解,80%的同学对Java语言基础、循环结构、选择结构以及数组的应用基本熟练,达到了Java编程的入门级水平<能够编写一些简单的应用程序,如:打印图案,数字排序,平年与闰年的判断等>;在逻辑思考上也有了一些进步,但是程序的训练还需进一步的加强.教案编号:7章节面向对象开发方法概述授课方式讲授+上机教学目的了解什么是面向对象.掌握面向对象的基本概念<类、对象、属性、封装、继承、多态>.掌握如何定义类,如何创建对象.掌握成员运算符的使用.掌握访问控制权限:public和private.培养学生抽象客观世界成主观世界的能力.培养学生初步的设计软件系统的能力.培养学生的团队意识.教学重点面向对象的核心思想和概念教学难点面向对象的核心思想和概念时间分配教学过程Min15151010202010101555作业点评<学生阐述+老师总结>方式:由1-3个同学来讲述上周作业第六题的实现思路以及展示具体实现,最后由老师总结出现的一些问题.上周课后作业检查方式:抽查2-5名同学谈谈对面向对象编程的认识以及对基本概念的描述.面向对象的编程思想对象现实世界中的实体是实际存在的某种物体,用OOP的术语就称为对象.在Java中我们通过对象对现实世界中的实体进行一个模拟和映射.对象是面向对象编程的核心部分,和现实世界一样,需要具有明确定义的状态和行为.对象的特征——属性属性——对象具有的各种特征每个对象的每个属性都拥有特定值对象的特征——方法方法——对象执行的操作类人们为了更好地认识世界,将现实生活中的事物〔对象划分成类;同一类中的事物总是具有一些共性;类以共同的特性和行为定义实体;类是具有相同属性和行为的一组对象的集合.类和对象的区别类是用来描述实体的"模板"或"原型";对象是实际的实体,每一个对象都是类的一个具体实例;类用来定义对象所有的属性和方法,同一类的所有对象都拥有相同的特征和操作;可以将类理解成生产产品的模具,而对象则是根据此模具生产的一个个产品.在Java中定义类创建对象的语法和数组相似,对象也是引用数据类型,只能使用new运算符从堆中分配内存;创建对象的一般语法: 类名引用名=new类名<>;使用已经定义好的类,创建该类对象的过程称为"实例化".访问权限:public和privateC语言中结构体的成员可以从任何地方进行访问,这将给数据的安全留下极大的隐患;为了避免从类外部直接访问类成员而造成的数据损坏,Java对类成员的访问制定了约束;关键字public和private是访问修饰符,用来说明某个成员是否可以从类外部进行访问;public修饰的成员可以在任何地方进行访问,不受任何约束;private修饰的成员只能够被本类中的其它成员访问,而不能从类的外部进行访问.讨论:列举出生活中常见的类以及它们的对象.由每个组一个代表发言,说出讨论结果.上机实验<一>练习一请通过代码封装,实现如下需求:编写一个类Book,代表教材:1、具有属性:名称〔title、页数〔pageNum、出版社<publisher>2.为各属性设置赋值和取值方法3、编写一个判断页数的方法judgePage〔,其中判断输入的页数不能少于200页,否则输出错误信息,并赋予默认值2004、具有方法:detail〔,用来在控制台输出每本教材的名称和页数编写测试类BookTest进行测试:为Book对象的属性赋予初始值,并调用Book对象的detail方法,看看输出是否正确?<二>练习二使用JAVA定义学生类Student!要求学生类有姓名、性别、年龄、体重等属性,并且全部属性都要使用private修饰.提供public的set和get方法来设置和获取属性的值.提供dining<>吃饭和walk走路<>.编写测试类Teststudent进行测试:为Student对象的属性赋予初始值,并调用Student对象的dining<>,walk<>方法,看看输出是否正确?作业布置教材P42第八题.课后总结只有40%的同学对面向对象的基本概念的理解和掌握;余下的大部分同学都属于一知半解;在这方面还需进一步加强练习.教案编号:8章节面向对象开发方法概述—类和对象的Java实现授课方式讲授+学生操作教学目的掌握类和对象的基本概念以及核心思想.掌握构造方法的写法以及重载.掌握对象在内存中的存放形式.培养学生对客观事物的抽象能力.培养学生系统分析的能力.培养学生的项目展示能力.教学重点构造方法.方法重载.教学难点方法重载.时间分配教学过程Min202020120作业点评<学生阐述+老师总结>方式:由2-4个同学来讲述上周实验的实现思路以及具体实现,最后由老师总结出现的一些问题.一个Java文件中出现多个class,需文件名的类修饰成public即主类.建立测试类后,创建对象后访问对象的属性时未通过对象进行引用而直接访问属性.setter方法传参数出现问题,如obj.setTitle="天龙八部";char型出现charch="男"!!!类中定义方法〔行为出现问题,即停留在C语言;〔丢失.setter和getter方法命名不规范以及方法返回类型和方法体出现问题.构造方法正是由于在实例化对象的同时会自动调用构造方法,所以构造方法一般用来给数据成员分配资源或初始化数据成员;构造方法的一般形式:访问权限类名〔形参列表{方法体}因为是由虚拟机来调用构造方法,所以构造方法一般应定义成public./*定义ConstructorDemo类,对构造方法进行测试*/classConstructorDemo{/*构造方法,方法名与类名完全一致无需指定返回值类型,也不能有返回值*/publicConstructorDemo<>{System.out.println<"这是构造方法">;}}/*Test类,用来容纳main方法一般将包含有main方法的类声明为public*/publicclassTest{/*main方法,程序入口*/publicstaticvoidmain<String[]args>{/*实例化ConstructorDemo类的对象*/ConstructorDemocd=newConstructorDemo<>;}}方法重载用于定义一组方法,这些方法具有相同的名称,并执行类似的操作,但是却使用不同的参数列表;编译器会根据调用时传递的实际参数自动判断具体调用的是哪个重载方法,如:/*abs方法的重载*/intabs<intx>{……}floatabs<floatx>{……}doubleabs<doublex>{……}longabs<longx>{……}方法重载的三大原则方法名相同参数不同〔可以有三方面的不同数量不同类型不同顺序不同同一作用域温馨提示:方法重载跟方法的返回值类型没有任何关系.也就是说,只有返回值不同的方法不能构成重载./*错误的方法重载*/voidfun<intx>{……};intfun<intx>{……};上机实验定义一个学生类,具有属性:姓名〔name、性别〔sex、年龄〔age、体重〔weight、银行帐户余额〔money!给每个属性提供set以及get方法.为该学生提供学习方法〔learn、休息方法<rest>、显示信息方法〔display.在学习方法中,体重减一;在休息方法中,体重加一.为学生类提供方法重载对成员变量进行灵活初始化.要求〔a、无参的构造方法;b、只有姓名一个参数的构造方法;c、有姓名、性别两个参数的构造方法;d、有姓名、性别、年龄三个参数的构造方法;e、有姓名、性别、年龄、体重四个参数的构造方法;f、有姓名、性别、年龄、体重、银行帐户五个参数的构造方法.在测试类中,实例化学生类,要求:通过6种不同的初始化方法,实现6个对象的创建,并显示具体学生的相关信息.定义一个类AbsoluteValue〔求绝对值,要求使用方法重载实现不同类型数值的取绝对值方法:abs.作业布置P19311、12、13.课后总结80%以上的同学掌握了windows应用程序的安装、卸载以及软件的注册.90%以上的同学掌握了windows的基本快捷操作.教案编号:9章节Java语言中的修饰符授课方式讲授+学生实验教学目的掌握this、static、package、import它们的含义以及用法.掌握对象数组的声明及用法.培养学生实际动手能力.培养学生面向对象的编程能力.教学重点对象数组.this、static、package、import.教学难点对象数组.this、static.时间分配教学过程Min1515151025100作业点评及检查<学生阐述+老师总结>由1-2个学生讲述上周作业的实现思路以及展示程序实现;过程中由老师补充和总结.对象数组〔讲授在Java中不但可以声明由原始数据组成的数组,还可以声明由对象组成的数组;声明对象数组的方式如://假设已经定义了一个Student类/*声明由5个Student对象组成的数组*/Student[]stdAry=newStudent[5];上述方式类似于C语言中的: structStudent**p=NULL;p=<structStudent**>malloc<5*sizeof<structStudent*>>;对象数组==引用数组this关键字既然所有的对象都共用相同的成员方法,那么在不同的对象都调用同一方法时,它是怎么确定要使用哪个对象的数据成员呢?每个成员方法都有一个隐含的this引用,它总是指向调用它的对象;This为调用成员方法的对象的地址;可以像使用任何引用那样使用this.静态成员变量在成员变量前加static关键字,可以将其声明为静态成员变量;静态成员变量只有一份内存拷贝,即所有对象共享该成员变量;静态成员变量的作用域只在类内部,但其生命周期却贯穿整个程序.包有时候,类和类的名称可能发生冲突;Java提供了把类名空间划分为更容易管理的块的机制,这就是包;包类似于文件夹;分属不同包的类名相同也不会引起冲突;能在包与包之间对于类的访问权限提供更有力的约束.使用package关键字打包使用import关键字导入包上机实验编写一个学生类,学生类里有标示姓名的属性和标示年龄的属性,写一个构造方法,在构造方法里为属性赋值时,必须用到this关键字.写一个输出函数,输出学生的姓名和其年龄.写一个测试类,在测试类里定义一个长度为3的学生类的对象数组,为数组里的每一个元素实例化一个学生对象,并调用其输出函数,程序运行结果如下:编写一个学生类,类里有一个标示姓名的属性和一个静态的标示总学生个数的属性,写一个构造方法,使每创建一个学生对象时学生个数自加,写一个输出结果的方法,程序运行的结果如下:随便写一个JAVA程序,在程序的最前面写下面这条语句:packagenewer.java;编绎运行,并到原程序所在目录下查看生成的包结构.编写下面的程序,编译后分析报错的原因publicclassTest{ publicstaticvoidmain<String[]args>{ JFramef=newJFrame<"我的窗口">; f.setSize<400,300>; f.setVisible<true>;}}然后在程序的最前面写上以下语句,再次编绎、运行,并分析这条语句的作用.importjavax.swing.JFrame;作业布置P216-21710、11、12、13.课后总结对static的理解还需多加强程序编写的练习.教案编号:10章节继承—基本概念及基本用法授课方式讲授+上机教学目的理解什么是继承.掌握在Java中实现继承,extends关键字.掌握继承中的构造方法的用法.掌握super关键字的含义及用法.培养学生项目展示能力.培养学生主动思考问题的能力.培养学生实际动手能力.教学重点继承的基本概念以及Java实现.教学难点继承的基本概念以及Java实现.时间分配教学过程Min205101510120作业点评及检查<学生阐述+老师总结>由1-2个学生讲述上周作业的实现思路以及展示程序实现;过程中由老师补充和总结.问题描述:方法重载的不理解〔同类同名不同参错误重犯率较高;如构造函数无返回类型、构造函数名与类名不一致、类名不规范、带有main方法的class名与物理文件名不一致、没有通过对象调用方法〔非静态方法、方法名后不带〔;甚至出现类名后加〔现象.只要与类名不一致的方法都视为成员方法,需返回类型.Dog类带有static的count成员,创建dog1...dog5对象后,最后用for循环遍历后,调用方法后结果一致.〔应在各自对象后调用方法静态变量以及静态成员可以直接通过类名.出来.回顾方法重载应遵循三大原则;适当地重载构造方法,可以使初始化对象的方式更为灵活;this引用总是指向调用成员方法的对象本身;静态成员〔包括静态成员属性和静态成员方法属于类而不是属于某个对象,可以在实例化对象之前通过类名访问;使用package关键字打包;使用import关键字导入包或类.继承的概念在现实生活中的继承,可以理解为儿子继承了父亲的财产,即财产重用;面向对象程序设计中的继承,则是代码重用;继承是利用现有的类创建新类的过程,现有的类称作基类〔或父类,创建的新类称作派生类〔子类.最高层是最普遍的、最一般的情况,往下每一层都比上一层更具体,并包含有高层的特征,通过这样的层次结构使下层的类能自动享用上层类的特点和性质;继承其实就是自动地共享基类中成员属性和成员方法的机制.在Java中实现继承在Java中实现继承需要使用到extends关键字;实现继承的一般语法是: [访问修饰符]class派生类名extends基类名{ 成员列表 }如: classStudentextendsPerson {…… }类成员的访问控制权限信息隐藏是面向对象程序设计的重要特点之一,它可以:防止类的使用者意外损坏数据;对任何实现细节所作的修改不会影响到使用该类的其它代码;使类更易于使用.在Java中实现信息隐藏的是访问控制权限机制;访问控制权限包括4个访问修饰符:public、protected、private和缺省;可以使用上述访问修饰符修饰类的成员.上机实验[练习一]医生有姓名〔name,编号〔idNumber,地址〔address等基本信息,都有display〔显示信息的方法.医生又分专业医生和非专业医生,非专业医生所具有的信息与上述的一样.但专业医生出了具有上述的基本信息之外还有特有的信息:专业〔speciality.请根据他们之间的关系,创建一个医生类〔Doctor,包含医生的基本信息.再利用继承创建一个非专业医生类〔NonSpecialist和一个专业医生类〔Specialist,专业医生类包含一个显示其专业的方法publicvoidshowSpwciality<>.利用这些类的对象显示他们各自的信息./ *提示1.医生类构造方法中可以加入一条显示代码System.out.println〔"这是父类构造方法";2.非专业医生类只需继承医生类无需编写任何属性,方法.3.专业医生类继承医生类,并添加属性:专业,构造方法需使用super调用父类构造方法,添加获得专业信的方法和显示专业信息的方法.所有的类都是用构造方法初始化对象,在test类中编写main方法测试.classDoctor{privatename;publicvoiddisplay<>{n<"姓名"+getName<>>;//其他属性类似姓名的处理方式} }〔以下练习都应采用上述构造函数/getXXXX<>/display<>的编码形式[练习题二]定义一个名为Vehicles〔交通工具的基类,该类中应包含String类型的成员属性brand〔商标和color〔颜色,还应包含成员方法run〔行驶,在控制台显示"我已经开动了"和showInfo〔显示信息,在控制台显示商标和颜色,并编写构造方法初始化其成员属性.编写Car〔小汽车类继承于Vehicles类,增加int型成员属性seats〔座位,还应增加成员方法showCar〔在控制台显示小汽车的信息,并编写构造方法.编写Truck〔卡车类继承于Vehicles类,增加float型成员属性load〔载重,还应增加成员方法showTruck〔在控制台显示卡车的信息,并编写构造方法.在main方法中测试以上各类.作业布置P1928、9.预习多态的基本概念以及具体实现.课后总结由于对继承属于面向对象的三大特征之一,所以本章节的速度放得很慢,但是即使这样依然有30%的人对继承的基本概念和实现仍然存在很大的问题.解决办法就是系能能够通过更多的练习来达到对理论的理解.教案编号:11章节继承—多态授课方式讲授+上机教学目的掌握方法覆盖的基本概念机Java实现.掌握多态,在Java中实现多态.掌握final关键字的用法.培养学生的表达能力、项目展示能力.培养学生的团队意识.培养学生的实际动手能力.教学重点方法覆盖、多态.教学难点方法覆盖、多态.时间分配教学过程Min15102520153070作业点评及检查<学生阐述+老师总结>作业讲解及点评:由1-2个学生讲述上周作业的实现思路以及展示程序实现;过程中由老师补充和总结.预习检查:在Java程序中,多态性带给我们的好处是什么?方法覆盖与方法重载有区别吗?抽2-4个人来回答上述两个问题.然后引入此堂课新内容.上周回顾<学生阐述+老师总结>继承是指从一个基类〔父类派生出派生类〔子类的过程;继承使用关键字extends;对于类成员,可以使用public、protected、缺省和private这4种访问权限修饰符;创建子类实例时,必须先执行父类的构造方法,然后再执行子类的构造方法;super关键字有两种主要用途,都与父类有关.方法覆盖在类的继承体系结构中,如果子类中出现了与父类中有同原型的方法,那么认为子类中的方法覆盖了父类中的方法〔也称为方法重写;通过子类的实例调用被覆盖的方法时,将总是调用子类中的方法,而父类中的方法将被隐藏.方法覆盖的Java实现.classParentClass{//定义父类publicvoidfun<>{System.out.println<"这是父类中的方法.">;}}classChildClassextendsParentClass{//子类继承于父类publicvoidfun<>{//子类覆盖父类中的方法System.out.println<"这是子类中的方法.">;}}classOverriddenTest{//用于容纳main方法publicstaticvoidmain<String[]args>{ParentClassparObj=newParentClass<>;parObj.fun<>;//父类的实例调用此方法ChildClasschiObj=newChildClass<>;chiObj.fun<>;//子类的实例调用此方法}}区分方法覆盖和方法重载方法覆盖〔重写和方法重载是两个极易混淆的概念,必须严格区分;方法覆盖出现的前提条件之一是必须有继承发生的情况下,而且要求父类和子类中的方法必须同原型;方法重载时,继承并不是必需的,它只要求方法名称相同,而参数列表则必须不同,换言之,各方法的原型其实是不同的.多态简单来说,多态是具有表现多种形态的能力的特征属于同一种类型,使用不同的实例而执行不同操作静态多态动态多态final关键字在Java中,final关键字有最终的,不可修改的含义;final关键字有三种用途,可以分别应用于变量、成员方法和类.如果将某个变量修饰为final,那么该变量就成为常量,一般语法:[访问权限]final数据类型常量名=值;如:finaldoublePI=3.14159; PI成为常量,其后任何试图对PI进行赋值的语句都将报错;常量在声明时必须初始化代码阅读上机实验定义一个宠物类<Pet>,它有两个方法:叫cry<>,吃东西eat<>,定义宠物的子类狗<Dog>,猫<Cat>,覆盖父类的cry<>,eat<>方法,里面写System.out.println<"猫吃了鱼">这样的打印语句,另外狗有自己的方法看门guardEntrance<>,猫自己独有的方法捉老鼠huntMice<><1>定义一个Test类,在main中定义两个Pet变量,pet1,pet2,采用引用转型实例化Dog,Cat,分别调用Pet的cry<>,eat<>;<2>将Pet引强制转换为具体的Dog,Cat,在调Dog的guardEntrance〔,Cat的huntMice<>〔提示:先用instanceof进行类型判断<3>修改Test类,添加喂养宠物feedPet<Petpet>的方法,在feedPet中调cry<>,eat<>方法,实例化Test类,再实例化狗Dogdog=newDog<>,猫Petcat=newCat<>,Test分别调feedPet<>方法分别传参数cat,dog,思考这两种方式的异同,深入理解引入转型和多态作业布置预习异常处理,并完成P279课后作业1、2、3.课后总结对方法覆盖和多态的理解难度较大,约一半的人都停留在记住概念上面,在实际的运用中存在问题,解决办法就是由老师给出作业的源代码,先个人看,然后小组讨论,最后由小组代表上台来给大家讲解实现的思路.教案编号:12章节异常处理授课方式讲授+讨论+上机教学目的掌握异常的概念.具备运用try块、catch块和finally块处理异常的能力.掌握Java中异常类的继承体系结构.运用关键字throw和throws处理异常.掌握自定义异常.培养学生程序的阅读能力.培养学生自助学习的能力.培养学生实际的动手能力.培养学生团队意识.教学重点try块、catch块和finally块.教学难点finally语句.时间分配教学过程Min1560105作业点评及检查<学生阐述+老师总结>作业讲解及点评:由1-2个学生讲述上周作业的实现思路以及展示程序实现;过程中由老师补充和总结.预习检查:由1-2个人回答上周布置的思考题作业.由此引出本次课新内容.异常什么是异常?程序中出现的错误被称为异常;异常可分为两大类:编译时异常和运行时异常;编译时异常一般是指语法错误,可以通过编译器的提示加以修正,这里我们不予讨论;运行时异常包括:运行错误:如数组下标越界,除数为0等;逻辑错误:如年龄超过200岁等.try块和catch块try块:一般用来监视有可能产生异常的代码部分;catch块:当异常产生后,catch块捕捉异常,并在其中对异常进行处理.……try{……//监视有可能发生异常的代码段}catch<异常类型>//捕获发生的异常{……//对异常进行处理}……finally块无论try/catch块中发生了什么,finally块都一定会执行;当异常发生时,程序可能会意外中断,有些被占用的资源就得不到清理.finally块可以确保执行所有的清理工作;无论是否发生异常,finally块都将执行;finally块是可选的,可视具体情况决定是否添加;finally块必须和try块一起使用,不能单独存在.try/catch/finally执行流程throw关键字throw语句用于手工抛出异常;执行流程将在throw语句后立即停止,转而寻找与之类型相匹配的catch块;throw语句的语法是: throw<异常类型的实例>.用户自定义异常Exception类和其子类都是系统内置的异常,这些异常不一定总能捕获程序中发生的所有异常;有时候,我们可能要创建用户自定义的异常类;用户自定义异常类应该是Exception类的子类;类似于:classMyExceptionextendsException { …… }上机实验1、编写程序ArrayDivide,在其中同时给出两个不同大小的整型数组.利用循环,将第一个数组包含的整型数作为被除数,第二个数组包含的整型数作为除数.用第一个数组中的整型数除以第二个数组中相应位置的元素.考虑各种可能产生的异常,并设计程序捕获和处理这些异常.提示:当第一个数组的长度大于第二个数组的长度时,可能产生的ArrayIndex-OutOfBoundsException异常;当被除数为0时,可能产生ArithmeticException的异常2、编写程序,实现从命令行输入三个数值参数作为三角形的三条边,以此构造一个三角形.程序应该实现如下功能:-->检查用户输入的命令行参数是否足够,如果不够三个参数,则程序可能产生ArrayIndexOutOfBoundsException异常-->检查输入的命令行参数是否为数值格式,如果输入的数值参数格式错误,则程序可能产生NumberFormatException异常-->检查输入的命令行参数中是否有负值,如果有负值,则程序可能产生ArgumentException异常<ArgumentException为自定义异常-->检查输入的命令行参数的三个数值是否能够构造一个三角形,如果不能构造一个三角形,则程序可能产生InvailEdgesException异常〔InvailEdgesException为自定义异常提示:三角形任意两边之和必须大于第三边.作业布置P280-2827、8、9.课后总结90%的人都理解了异常处理,并且能够在程序中熟练的运用.但是在对finally块的掌握程度上还不够.教案编号:13章节Java基本语法、流程控制、面向对象编程、异常处理做一次全面的复习授课方式讲授+上机教学目的巩固学生对前面章节内容的学习.帮助学生将前面的内容串联起来,能够熟练的运用前面的内容来完成应用程序的编写.培养学生自主学习的能力.培养学生系统分析问题的能力.培养学生的实际动手能力.教学重点教学难点时间分配教学过程Min251555作业点评及检查<学生阐述+老师总结>作业讲解及点评:由1-2个学生讲述上周作业的实现思路以及展示程序实现;过程中由老师补充和总结.作业检查:由3-5个同学给出作业的答案以及讲解实现思路,老师从旁补充和总结.上机实验Java有那些基本数据类型,String是不是基本数据类型?char型变量中能不能存贮一个中文汉字?为什么?访问权限修饰符public,private,protected的区别,默认不写是?error和exception有什么区别?请列举出常见的异常类.用关键字final分别修饰类、方法、变量时,有何意义?运行时异常与编译时异常有何异同?什么是方法重载?什么是方法重写?它们有什么区别?多态的几种形式和各自的特点.JAVA语言如何进行异常处理?关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗?如果try{}里有一个return语句,那么紧跟在这个try后的finally{}里的代码会不会被执行,什么时候被执行,在return前还是后?请写出下列程序结果a>classBase{inti=99;publicvoidamethod<>{System.out.println<"Base.amethod<>">;}Base<>{amethod<>;}}publicclassDerivedextendsBase{inti=-1;publicstaticvoidmain<Stringargv[]>{Baseb=newDerived<>;System.out.println<b.i>;b.amethod<>;}publicvoidamethod<>{System.out.println<"Derived.amethod<>">;}}b>publicclassAccpTeacher{publicvoidgiveLesson<>{System.out.println<"知识点讲解">;}}publicclassAccpDBTeacherextendsAccpTeacher{publicvoidgiveLesson<>{System.out.println<"启动SqlServer">;}}publicclassTest{publicstaticvoidmain<String[]args>{AccpTeachert=newAccpDBTeacher<>;t.giveLesson<>;}}c>classBase{publicStringname;publicBase<>{name="Base";}publicBase<StringpName>{ name=pName;}publicvoidmethod<>{ System.out.println<name>;}}classChildextendsBase{publicChild<>{super<"Child1">;name="Child2";}}publicclassSample{publicstaticvoidmain<String[]args>{Childc=newChild<>;c.method<>;}}题目:品尝饮料语言和环境实现语言:Java环境要求:JDK1.4或以上版本及其联机帮助文档要求使用命令行参数〔饮料类型,输出该饮料类型的味道,如:当命令行参数为1时,结果见图1:图一如果没有该种饮料,结果见如图2:图二推荐实现步骤建立一个Java抽象类Drink,应当:声明一个抽象方法taste<>,该方法负责输出饮料的味道;声明int型常量来代表不同的饮料类型〔咖啡、啤酒、牛奶,如:声明静态方法getDrink<intdrinkType>,根据传入的参数创建不同的饮料对象,并返回该对象,建议使用switch语句.该方法要求声明DrinkNotFoundException,当没有相对应的饮料类型时,抛出该异常.建立Drink的具体子类:分别建立Drink的子类:Coffee〔代表咖啡,Beer〔代表啤酒,Milk〔代表牛奶;子类分别要求:Coffee类私有属性品牌〔brand,带有此属性参数的构造方法;并提供相应的setter和getter方法;Beer类私有属性颜色〔color,带有此属性参数的构造方法;并提供相应的setter和getter方法;Milk类私有属性状态<state>,带有此属性参数的构造方法;并提供相应的setter和getter方法;实现taste<>方法,要求在控制台打印各自的味道特征.建立异常类DrinkNotFoundException继承Exception在Drink的方法getDrink<intdrinkType>中声明引发DrinkNotFoundException异常,当传入的参数没有相对应的饮料类型时,抛出异常.在使用getDrink方法的类中捕捉该异常.建立Test测试类,测试以上内容的正确性编写main方法,通过命令行传参的方式传入某种饮料的类型.在main方法中,调用Drink类的getDrink方法,获得相应的饮料对象.注意捕获DrinkNotFoundException.然后调用该饮料对象的taste<>方法,输出该饮料的味道.编译程序,并运行.注意事项仔细审题,把题目要求理解准确;请注意多态性的运用;请注意代码的书写、命名符合规范,应有适当的注释.作业布置预习java.lang包.课后总结通过本次的练习,至少让80%的同学巩固了前面所学的内容,并且将前面的内容页进行了一次很好的融合.教案编号:14章节java.lang包授课方式讲授+上机教学目的了解java.lang包.掌握包装类.掌握String类.培养学生的个人表达能力、项目展示能力.培养学生的团队意识.培养学生的主动积极性.教学重点String类.教学难点时间分配教学过程Min151553010105作业点评及检查<学生阐述+老师总结>作业讲解及点评:由1-2个学生讲述上周作业<品尝饮料>的实现思路以及展示程序实现;过程中由老师补充和总结.回顾<由学生主动起来回答,老师补充>Java有那些基本数据类型,String是不是基本数据类型?char型变量中能不能存贮一个中文汉字?为什么?访问权限修饰符public,private,protected的区别,默认不写是?error和exception有什么区别?请列举出常见的异常类.用关键字final分别修饰类、方法、变量时,有何意义?运行时异常与编译时异常有何异同?什么是方法重载?什么是方法重写?它们有什么区别?多态的几种形式和各自的特点.java.lang包简介java.lang包是java内置的一个基础包,其中包含了一系列程序中经常要用到的类;在默认情况下,每个java程序都会自动导入该包,因此无需在程序中显式地声明.包装类使用原始数据类型声明的变量,如:intnum=10;这里的num只是一个变量,而不是对象;在某些必须操作对象的场合,这样的变量就不能使用了;Java提供一系列包装类,以便将原始数据类型当作对象进行操作;在java.lang包中,对于每个原始数据类型都有一个相应的包装类.包装类的构造方法包装类的valueOf方法包装类的parseXxx方法Character类中的常用方法Character类常用方法示例String类Java中,字符串是String类的对象;可以通过使用String类提供的方法来完成对字符串的操作;创建一个字符串对象之后,将不能更改构成字符串的字符;每当更改了字符串版本时,就创建了一个新的字符串对象,并在其内包含所做的修改,原始字符串保持不变.上机实验练习一:编写一个Java程序,完成以下功能: 声明一个名为s的String对象,并使它的内容是"CallmeAccp"; 打印整个字符串. 使用length〔方法打印字符串的长度 使用charAt〔方法打印字符串的第一个字符 使用charAt〔方法和length〔打印字符串的最后一个字符 使用indexOf〔方法和substring〔方法打印字符串的第一个单词.练习二:编写一个Java程序,用于 测试两个字符串StringfirstString="Thisis"和StringsecondString="Thisis";是否相等. 将"hisfather"与其中的firstString字符串连接. 用z替换新字符串中的i.练习三:编写一个ExtractString程序,从字符串"SeizetheDay"中提取单词"the"和"Day".练习四:使用toCharArray<>判断一个字符串是否为回文.//回文:asdsa练习五:判断电子邮件 1.必须包含@和.而且@只能有一个 2.不能以@或.开头以及结尾 3.@必须出现在.之前 indexOf lastIndexOf作业布置P624-6251-9.课后总结对于系统包,只需要多写多练就能够完全的掌握,从整体上来是说,约85%的人都掌握了这堂课的内容.教案编号:15章节Java常用类授课方式讲授+上机教学目的掌握StringBuffer类.熟练运用Math类中的方法.熟练运用Object类中的方法.熟练运用Class类中的方法.培养学生的项目展示能力.培养学生的实际动手能力.培养学生的自主学习能力.教学重点Object、StringBuilder、Math.教学难点Object、StringBuilder、Math.时间分配教学过程Min151010101515105作业点评及检查<学生阐述+老师总结>作业讲解及点评:由3-6个学生分别讲述上周作业的实现思路以及展示程序实现;过程中由老师补充和总结.回顾Lang包是我们常用的工具包包装类以及包装类的构造方法、valueOf〔方法、parseXxx〔方法;Character类常用静态方法:isLetter<charch>、isDigit<charch>、isUpperCase<charch>、isLowerCase<charch>、isWhitespace<charch>String类的常用操作:字符串长度;字符串比较;字符串搜索;提取字符串;更改字符串大小写;数据格式转化.StringBuffer类StringBuffer类用于表示可以修改的字符串;使用+运算符的字符串将自动创建字符串缓冲对象;以下是StringBuffer类的构造方法有4种重载方式,以下是常用的几个:Math类Math类中提供了一系列基本数学运算和几何运算的方法;该类的构造方法被修饰为private,因此不能实例化;该类中的所有方法都是静态的,可以通过类名直接调用;该类被修饰为final,因此没有子类.Object类的常用方法Class类Java应用程序实际上都是由一个个对象组成,这些对象分别属于什么类,是从哪个类继承而来,这一系列的信息都是由Class类的实例来记录的;Class类的实例用于记录对象的类描述信息;如果在程序运行时,需要检索某个对象的相关类信息,可以调用该对象的getClass方法来获得记录其描述信息的Class类实例;Class类没有公共的构造方法,无法通过new运算符实例化,只能通过对象的getClass方法,或是通过Class的静态方法forName来获得实例.上机实验练习一:回文串编写程序CheckPalindrome,从命令行参数中读入一个字符串,检查该字符串是否为回文串,回文串的特点是顺序读和倒序读都是一样.例如,mom、dad和atoyota都是回文串.练习二:猜数字 编写程序Guess,随机地产生一个整数,表示从A到Z的字母.之后,通过命令行参数读入一个字母,试图猜出随机产生的字母.无论猜得是否正确,都打印出相应的信息.另外,如果猜对了,程序退出.作业布置预习java.util包.课后总结通过一系列的案例加课后练习,来让同学掌握课堂上所学的内容;整体效果良好.教案编号:16章节java.util包授课方式讲授+上机教学目的了解java.util包.能够熟练运用如下类进行Java编程〔Date类、Calendar类、Random类掌握集合类<List、Map>的使用.能够熟练使用Collection接口及其实现类<ArrayList类、LinkedList类、Vector类>.掌握HashMap类培养学生的个人表达能力、项目展示能力.培养学生的个人动手能力.培养学生的逻辑思维能力.教学重点List、Map、Vector.教学难点List、Map、Vector.时间分配教学过程Min1545120作业点评及检查<学生阐述+老师总结>作业讲解及点评:由2-4个学生分别讲述上周作业的实现思路以及展示程序实现;过程中由老师补充和总结.Java.util包java.util包简介.java.util包是Java内置的一个工具包,其中包含一系列常用的工具类;如处理日期和日历的类以及一些集合类;java.util包不会默认导入,如果要使用到该包中的类,则必须在程序的开始部分显式地声明如下语句: importjava.util.*;Date类Date类对象用来表示时间和日期;该类提供一系列操纵日期和时间各组成部分的方法;Date类最多的用途是获取系统当前的日期和时间.Calendar类Calendar类也是用来操作日期和时间的类,但它可以以整数形式检索类似于年、月、日之类的信息;Calendar类是抽象类,无法实例化,要得到该类对象只能通过调用getInstance方法来获得;Calendar对象提供为特定语言或日历样式实现日期格式化所需的所有时间字段.Random类Random类专门用来生成随机数;该类的构造方法有2种重载方式.集合集合是将多个元素组成一个单元的对象;类似于数组,但数组最大的缺点是:长度受到限制〔一经创建,就不可再改变,并且只能存放相同数据类型的元素;集合的长度没有限制,可以存放任意多的元素,而且元素的数据类型也可以不同;集合还提供一系列操纵数据的方法,如存储、检索等等.上机实验<一>.使用Date类求获取当前日期,分别使用下以下格式打印: 1>按日期的原格式打印. 2>"当前时间是:xxxx年xx月xx日星期X北京时间" 3>"当前时间是:xxxx年xx月xx日时:分:秒"4>按欧美日期习惯输出当前日期<"月-日-年时:分:秒"><二>使用Date的Date<intyear,intmonth,intdate>构造方法,构造当前日期,打印输出.求出当前日期自1970年1月1日起的已经有多少天了.<三>.使用Calendar类,编写程序求出你的出生的那一天是星期几.并求出你出生到今天一共有多少天,打印输出.<四>.使用Calendar类,打印出当前月的日历表,效果图如下:<五>.利用Random类,随机生成一个int随机数,long随机数,float随机数,double随机数,高斯随机数,并在屏幕上随机打印.<六>.使用Random类模拟摇色子游戏.共5粒色子,分别显示出5粒色子的点数,和加起来一共是多少点.打印输出.作业布置编写程序,依次应用ArrayList和LinkedList实现栈和队列的功能.提示:〔a使用ArrayList和LinkedList模拟栈和队列.〔b使用push和pop方法模拟进栈和出栈操作.编写一个程序,读入一系列名字并将它们存储在LinkedList和ArrayList中,并实现以下功能:〔a允许用户通过名字进行查找.〔b允许用户将姓名进行排序.〔c允许用户删除指定姓名.课

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论