当前位置:网站首页 > Java基础 > 正文

java最基础教学



java最基础教学

《JAV4程序设计基础教程》

教学教案第1章Java基础知识

课程名称Java程序设计基础教程(慕课版)项目名称Java基础知识任务名称Java基础知识课时4项目性质□演示性 口验证性□设计性J综合性授课班级授课日期授课地点教学目标能力目标:.具备使用Eclipse编写Java程序的能力.具备创建一个Java项目的能力知识目标:.了解Java的诞生、发展、特点.掌握Java开发环境搭建的方法.掌握Java开发工具的使用素质目标:.培养学生信息搜集能力.培养学生团结合作、互帮互助的能力;教学内容.任务描述.任务展示与实现(1)利用Eclipse编写Java代码并验证其效果(2)创建一个Java项目(3)学生动手操作.教师讲解本任务涉及的知识点.任务小结教学重点Java的语言特点Java开发工具的使用教学难点1.Java开发工具的使用教学准备.装有JDK、Eclipse的电脑.教学课件PPT.教材:《Java程序设计基础教程(慕课版)》刘刚刘伟人民邮电出版社作业设计.使用Eclipse编写HelloWorld程序。.创建一个Java项目教学过程

螂1.使用Eclipse创建Java项目和编写Java类,实现一个Java程序。实训2.创建一个简单的Java项目,能够自主创建一个独立的项目。总结通过学习,学生能够掌握Java的发展历程和语言特点,Java开发环境的搭建以及使用编辑器创评价建Java项目的方法。本节课主要运用案例教学法,通过对Java概念的深入理解,掌握Java的基本特点,深入探讨Java编程的方法,通过实例的方法加强对JDK、JRE和JVM的关系的理解和JDK的安装及Java开发环境的环境变量的配置的学习,达到能够独立熟练运用Java来解决实际问题的能力。教学评价方式以小组为单位,以完成案例的质量为评价标准,形成任务驱动,小组协作,质量与速度并存的课堂评价方式,促进学生的自主、创新学习的方式。

第2章基本数据类型及运算符课程名称Java程序设计基础教程 丫百口々为(慕课版) 项目名称基本数据类型及运算符任务名称基本数据类型及运算符 课时6项目性质□演示性口验证性 □设计性 J综合性授课班级授课日期授课地点教学目标能力目标:.具备进行数据类型转换的能力.具备运用运算符计算的能力知识目标:.掌握8种基本数据类型及其拆装箱.掌握Java中的常用操作符.掌握Java中表达式的各种运算符的执行顺序和结合性素质目标:.培养学生信息搜集能力.培养学生团结合作、互帮互助的能力;教学内容.任务描述.任务展示与实现(1)将十进制的整型IP地址转换成long类型值(2)将long类型转换成IP(3)学生动手操作.教师讲解本任务涉及的知识点.任务小结教学重点Java的基本数据类型Java的运算符教学难点2.运算符的优先级问题教学准备.装有JDK、Eclipse的电脑.教学课件PPT.教材:《Java程序设计基础教程(慕课版)》刘刚刘伟人民邮电出版社作业设计2.将long类型的整数转换成一个十进制形式的IP地址教学过程教学过程一孵和教学内容与过程(教学内容、教学方法、组织形式、教学手段)织做好课前“5分钟”教学管理(多媒体、实训室),做好上课前的各项准备工作(打开电脑、打开课件、打开软件、打开U盘中的素材位置、打开授课计划、教案等),吸引学生注意力。课程喇【课前说明】对整型、浮点型、布尔型和字符型等基本数据类型,数据类型、类和接口等复合数据类型,算术运算符、关系运算符、逻辑运算符、条件运算符、位运算符和赋值运算符六种运算类型及其优先级等知识点进行初步的了解。【目的】使学生从了解本单元的学习目标、学习重点、考评方式等方而明确学习本单元知识的要求和目标。课程幅艇一、Java的基本数据类型因数据的类型不同,其表示的数据范围、精度和所占的存储空间都不相同。在Java最初设计的时候就明确了它要支持的两种数据类型:基本数据类型和对象。基本数据类型:整型、浮点型、布尔型和字符型。复合数据类型:数据类型、类和接口。基本数据类型有8种:booleanxbyte'charxshort、int、long、float和double,其中以boolean、int、char和double最为常用°二、Java的运算符Java中的运算符共36种,依照运算类型可以分为6大类,包含算术运算符、关系运算符、逻辑运算符、条件运算符、位运算符和赋值运算符。Java语言的运算符不仅具有不同的优先级,还要受运算符结合性的制约。Java中的运算符的结合性分为两种,即左结合性(自左向右)和右结合性(自右向左)。三、如何使用Java计算?案例:1.常量和变量的具体应用publicclassConstantAndVariablesDemo{publicstaticvoidmain(StringOargs){finalintMALE=1;//定义常量MALE表示男性,常量需要在声明时鼠值intage;//声明age,类型是int类型的intheight=180;//声明height,类型是int类型的,并JR值为180〃age未定义,所以此处会抛出错误// System.out.printlnfMALE="+MALE+”;age="+age+;height="+height);age=20;//给age鼠值//打印输出System.out.println(MMALE="+MALE+age="+age+”;height="+height);height=177;//变量的重新赋值System.out.printlnfMALE="+MALE+“;age="+age+M;height="+height);// MALE=0;//常量无法重新鼠值))2.自增自减运算的具体应用publicclassAutoIncrAndDecrDemo{publicstaticvoidmain(StringOargs){inta=1;intb=1;intc=++a;//前自增intd=-b;//前自减System.out.printlnC^="+a+M,b='*+b+c=M+c+",d="+d);c=a++;//后自增d=b-;//后自减System.out.println(Ma="+a+M,b=M+b+c=M+c+",d="+d);))螂1.在程序开发中可能会碰到将IP地址转换成long类型的整数,或者将十进制整数转换成IP实训地址的情况,此时,需要将一个地址转换成一个long类型整数,或者将long类型的整数转换成一个十进制形式的IP地址。总结通过学习,学生能够掌握Java的数据类型和运算符基本概念,运算符的优先级以及运算规则。评价本节课主要运用案例教学法,通过对Java的数据类型和运算符的深入理解,掌握Java的运算符的优先级,通过实例的方法加强对Java数据类型和运算符的理解,达到能够独立熟练运用Java的数据类型和运算符来解决实际问题的能力。教学评价方式以小组为单位,以完成案例的质量为评价标准,形成任务驱动,小组协作,质量与速度并存的课堂评价方式,促进学生的自主、创新学习的方式。

第3章控制执行流程课程名称Java程序设计基础教程 丫百口々为(慕课版) 项目名称控制执行流程任务名称控制执行流程 课时4项目性质□演示性口验证性 □设计性 J综合性授课班级授课日期授课地点教学目标能力目标:.具备使用if条件分支语句解决问题的能力.具备使用for循环语句解决问题的能力.具备使用while循环语句解决问题的能力知识目标:.了解什么是流程控制语句.掌握分支结构的语法结构和用法.掌握循环语句的用法.掌握break语句与continue语句的用法素质目标:L培养学生知识掌握和技能运用能力2.培养学生团结合作、互帮互助的能力:教学内容.任务描述.任务展示与实现(1)分别是利用for语句、while语句实现循环(2)利用if嵌套语句和switch多层分支语句实现复杂分支(3)利用循环语句中break和continue语句实现求3的倍数(4)学生动手操作.教师讲解本任务涉及的知识点.任务小结教学重点if…else条件分支语句dowhile循环语句与while循环语句在使用上的不同教学难点.嵌套语句.循环语句中的Continue和break语句的使用教学准备.装有JDK、Eclipse的电脑.教学课件PPT.教材:《Java程序设计基础教程(慕课版)》刘刚刘伟人民邮电出版社作业设计3.编写一个排序的程序,可以让一个混乱的数组变成一个有序的数组。教学过程教学过程一孵教学内容与过程和(教学内容、教学方法、组织形式、教学手段)做好课前“5分钟”教学管理(多媒体、实训室),做好上课前的各项准备工作(打开电脑、打织开课件、打开软件、打开U盘中的素材位置、打开授课计划、教案等),吸引学生注意力。课程【课前说明】喇分别介绍Java流程控制语句的选择结构和循环结构,分支结构也叫选择结构,语句包括if-else语句和switch语句,都是根据一定的条件去执行一条语句或语句组:循环语句指在循环语句中指定语句重复执行的次数,也可以指定重复执行的条件。【目的】使学生从了解本单元的学习目标、学习重点、考评方式等方而明确学习本单元知识的要求和目标。课程一、讲解什么是控制执行结构阳二、选择结构语句的语法结构艇if选择语句:if(boolean-expression){statement;II执行语句句容}else(statement;II执行语句内容)switch选择语句:switch(selector){caseselector:statement;break;caseselector:statement;break;caseselector:statement;break;caseselector:statement;break;default:statement;)三、循环结构语句的语法结构for循环语句:for(init;boolean-expression;step){statement;)do-while循环语句:do(statement;}while(boolean-expression);while循环语句:while(boolean-expression){statement;II循环体)四、break语句和continue语句在循环语句中的用法。案例:2.常量和变量的具体应用publicclassConstantAndVariablesDemo{publicstaticvoidmain(StringOargs){finalintMALE=1;//定义常量MALE表示男性,常量需要在声明时鼠值intage;//声明age,类型是int类型的intheight=180;//声明height,类型是int类型的,并赋值为180〃age未定义,所以此处会抛出错误//System.out.println(HMALE="+MALE+M;age="+age+”;height="+height);age=20;//给age尿值//打印输出System.out.printlnfMALE="+MALE+age="+age+”;height="+height);height=177;//变量的重新鼠值System.out.println(HMALE="+MALE+M;age="+age+”;height="+height);// MALE=0;//常量无法重新鼠值)2.break和continuepublicclassContinueBreakDemo{publicstaticvoidmain(StringOargs){for(inti=0;i<10;i++){if(2==i){System.out.println("程序运行跳出标志!跳出循环!)break;)System.outprintln(“第"+i+'次循环。”);)intcount=0;while(5>count){//在5以内循环count++;//自增1if(count%3==0){//如果count是3的倍数,进行下一次循环continue;)System.out.printlnC^"+count+"次循环!");)))

螂1.冒泡排序实训冒泡的原则是,每一次循环结束之后都能将乱序中的最大数放到乱序数列的最右边。(1)用for循环对数组进行循环。(2)从左往右依次比较相邻的两个数,将较大者放到较小者的右边,保证最右边的数字大于左边的所有数字。(3)继续执行,依次将之后的较大数字放到较小数字的右边,直到所有的数字都比自己左边的数字大、比右边的数字小。总结通过学习,学生能够掌握Java流程控制语句中的选择结构和循环结构语句在程序编写中的具体评价用法。本节课主要运用案例教学法,通过对Java流程语句的深入理解,掌握Java选择结构和循环结构的基本特点,深入探讨Java的选择结构和循环结构的使用方法,通过实例的方法加强对Java的选择结构和循环结构的理解,达到能够独立熟练运用Java的选择结构和循环结构流程语句来解决实际问题的能力。教学评价方式以小组为单位,以完成案例的质量为评价标准,形成任务驱动,小组协作,质量与速度并存的课堂评价方式,促进学生的自主、创新学习的方式0

第4章字符串课程名称Java程序设计基础教程(慕课版)项目名称字符串任务名称字符串课时6项目性质□演示性口验证性 □设计性 J综合性授课班级授课日期授课地点教学目标能力目标:.具备使用字符串常用API解决问题的能力.具备使用StringBuffer类操作字符串的能力.具备使用数组常用API解决问题的能力知识目标:.掌握String类及其常用API.掌握StringBuffer类的应用.掌握常用的JavaAPI素质目标:L培养学生知识掌握和技能运用能力.培养学生团结合作、互帮互助的能力:教学内容.任务描述.任务展示与实现(1)Random类随机产生一个随机数。Scanner类接收用户的输入。System类实现系统退出。.教师讲解本任务涉及的知识点.任务小结教学重点.字符串的分割、比较等操作.数组的拷贝、随机数的生成教学难点StringBuiIder与StringBuffer的比较Random类与Math类生成随机数教学准备.装有JDK、Eclipse的电脑.教学课件PPT.教材:《Java程序设计基础教程(慕课版)》刘刚刘伟人民邮电出版社作业设计4.编写一个猜数字游戏教学过程

孵教学内容与过程(教学内容、教学方法、组织形式、教学手段)做好课前“5分钟”教学管理(多媒体、实训室),做好上课前的各项准备工作(打开电脑、打织开课件、打开软件、打开U盘中的素材位置、打开授课计划、教案等),吸引学生注意力。课程【课前说明】说明本章主要讲解String类和常用的JavaAPE首先讲解String类及常用的String操作方法,并讲解了不同类型的操作方法;然后讲解StringBuffer和StringBuilder:最后讲解JavaAPI中常用的几个工具类,System、Random和Scanner类,同时简单讲解了Math类,【目的】使学生从了解本单元的学习目标、学习重点、考评方式等方而明确学习本单元知识的要求和目标。课程一、讲解String类及常用的String操作方法内容Java核心的类库中定义了String类用于字符串的常用操作。String类的常用方法很多,但可以总体归为4类:字符串查询操作、字符串修改操作、字符串分割操作以及字符串比较操作。犍二、讲解StringBuffer和StringBuilderStringBuffer和StringBuilder的直接父类都是AbstractStringBuikter-它们唯一的区别就是,StringBuffer的每个方法上都多了一个synchronized关键字.StringBuffer是线程安全的,而StringBuilder则不是。在编写程序的时候如果判定不需要考虑多线程环境,那么首选StringBuilder,因为无须考虑多线程。三、讲解JavaAPI中常用的几个工具类,System、Random和Scanner类,同时简单讲解了Math类案例:1.字符串的修改操作publicclassStringModifyDemo{publicstaticvoidmain(StringOargs){Stringstr="7731-5524-jhdF-FfFO:System.outprintln("将F昔换成X,'+str.replace(T","X")+"・");System.outprintln。将所有的F昔换成X,'+str.replaceAII(T",MXH)+M-w);System.outprintln("将第一个F替换成b+str.replaceFirst(T-,nbM)+System.outprintln("将字符串全部转换成大写str.toUpperCaseO+System.outprintln。将字符串全麻转换成小写str.toLowerCaseO+System.outprintln("去除字符串前后的空格str.trim()+“•");System.outprintln。拼接BVNS字符串「'+str.concatfBVNSM)+)>

2.数组拷贝publicclassArrayCopyDemo{publicstaticvoidmain(String[]args){StringQfromArr={nabcM,"bcdM,Mcde"f"efg",HfghM);//源数组StringQtoArrl={-123”,”456)//目标数-1StringQtoArr2=newString[9];//目标数组2H从源数组中的第。个元素向目标数组2中复制3个元素,从索引位量1开始System.arraycopy(fromArT,0,toArr2,1,3);for(Stringstr:toArr2){System.out.print(str+"");〃打印输出数组内的元素}System.out.println(M …”);//从源数组中的第孙元素向目标数组1中复制3个元素,从索引位SM开始System.arraycopy(fromArr,0,toArrl,1,3);for(Stringstr:toArrl){System.out.print(str+-");//打E|1输出数组内的元素)System.out.println(M “);))螂2.参考移动的活动,我们可以将其简化成一个动手任务:猜数字游戏。系统随机生成一个1〜实训100的随机数,玩家键入自己猜测的数字,如果猜中了,则提不玩家赢了,游戏结束,否则提示用户猜测的数字是大了或者小了,让玩家继续猜,玩家有十次猜测机会。总结通过学习,学生能够掌握String类和常用的JavaAPI在程序编写中的具体用法。评价本节裸主要运用案例教学法,通过对字符串深入理解,掌握String.StringBuffer.StringBuilder类的基本特点,深入探讨String、StringBuffer、StringBuilder类的使用方法,通过实例的方法加强对String类和常用的JavaAPI的理解,达到能够独立熟练运用String类和常用的JavaAPI来解决实际问题的能力。教学评价方式以小组为单位,以完成案例的质量为评价标准,形成任务驱动,小组协作,质量与速度并存的课堂评价方式,促进学生的自主、创新学习的方式。第5章面向对象课程名称Java程序设计基础教程(慕课版)项目名称面向对象任务名称面向对象课时6项目性质□演示性口验证性 □设计性 J综合性授课班级授课日期授课地点教学目标能力目标:.具备使用对象的封装、继承和多态解决问题的能力.具备使用掌握抽象类和接口解决问题的能力.具备使用掌握重写和重载解决问题的能力知识目标:

.了解而向对象、类的概念和使用.掌握封装、继承、多态的应用素质目标:.培养学生知识掌握和技能运用能力.培养学生团结合作、互帮互助的能力:教学内容.任务描述.任务展示与实现(1)定义1个抽象类(2)定义3个接口(3)定义1个对象,继承抽象类并实现接口.教师讲解本任务涉及的知识点.任务小结教学重点1.封装、继承、多态的应用教学难点.接口的使用.重写与重载的区别教学准备.装有JDK、Eclipse的电脑.教学课件PPT.教材:《Java程序设计基础教程(慕课版)》刘刚刘伟人民邮电出版社作业设计5.编写代码模拟间谍变装功能教学过程教学过程一孵教学内容与过程和(教学内容、教学方法、组织形式、教学手段)做好课前“5分钟”教学管理(多媒体、实训室),做好上课前的各项准备工作(打开电脑、打织开课件、打开软件、打开U盘中的素材位置、打开授课计划、教案等),吸引学生注意力。课程【课前说明】喇本章主要讲解而向对象的知识。首先介绍了Java中包和访问修饰符的概念,之后介绍了类的概念。接着介绍了封装、继承和多态的概念。封装包含两个层而,属性的封装和方法的封装(类也是一种形式的封装),属性的封装是让属性隐藏起来,只能通过特定方式获取和修改,方法的封装则是将方法的实现隐藏起来,将方法名称暴露出去。一个对象可以是多种类型就是多态。本章还介绍了重写和重载,重写是覆盖父类或实现接口中某个方法的方法体,但是方法签名不变,重写使用©Override注解注释:重载是指可以定义多个重名方法,但这些重名方法的方法签名是不同的,也就是说,传入的参数类型或者个数是不相同的。【目的】使学生从了解本单元的学习目标、学习重点、考评方式等方而明确学习本单元知识的要求和目标。课程三、讲解面向对象和类的概念内容包是Java提供的用于解决命名冲突的一种机制,其采用了属性目录的存储方式,有效地解决了艇命名冲突的问题。在Java中有4种访问修饰符:publicxprotected>private和default。类就是对对象的抽象,用于描述一组对象共同的属性和行为。在Java中,类可以定义成员变量和成员方法,这些属性就是用于描述对象的属性,也就是对象的特征,方法则用于描述对象的行为。四、讲解封装、继承、多态在面向对象编程中,封装又叫隐藏实现。在而向对象中,如果对象有相同的属性和行为,那么就归为一类,当这种归类还可以延伸时,则继续分类,直到细化至需要的层级。这种层级关系就是继承。在软件工程中,接口泛指提供别人调用的方法或者函数,在Java中它是一个对行为的抽象的类。Java语言支持两种形式的多态:运行时多态和编译时多态。运行时多态是指Java中一种动态性的多态,通过覆盖基类中相同方法签名的形式来实现。编译时多态是指Java中一种静态性的多态,通过重载函数的形式来实现。重载可以实现本类内的方法多态性,重写可以实现子类或实现类的多态性。案例:1.类的声明//定义狼狗类publicclassWolfdog{//狼狗的姓名Stringname;//狼狗的年龄intage;//狼狗毛的颜色Stringcolor;//狼狗叫publicvoidbark(){System.out.printlnC'Wolfdognamed"+name+Mdress"+color+”isbarkatage"+age+))2.方法的重载publicclassOverwriteDemo{voidprint(inti){System.outprintln("打印整型值:+i);)voidprint(Strings){System.out.println("打印字符串类型值:”+s);)voidprint(Strings1,Strings2){System.out.println("打印字符串类型值1 +s1+=字符串类型值2:-+s2);)publicstaticvoidmain(String[]args){OverwriteDemoowd=newOverwriteDemo();//编误时多态owd.print(12);owd.printC1234");owd.print,字符串11"字符串2)))麟实训3.Tom是一个间谍,为了获取敌方情报,Tom会多项技能,能在不同的场景下扮演不同的角色以迷惑对方。Tom拥有丰富的地理知识,在日常生活中他是一位地理老师:为了能够获取敌方的数据库内容,Tom拥有丰富的黑客知识,能够激活成功教程很多服务器:为了逃避敌人的追捕,必要的时候还要飙车以逃脱敌人的跟踪;同时Tom也是一位密码学方面的高手,能够利用摩斯密码传递情报并且能够激活成功教程敌方发送的加密信息。编写代码模拟Tom的变身行为。

总结通过学习,学生能够掌握Java中包、访问修饰符、类的概念,封装、继承和多态的概念的具体评价用法。本节课主要运用案例教学法,通过对面向对象深入理解,掌握封装、继承和多态的基本特点,深入探讨封装、继承和多态的使用方法,通过实例的方法加强重载和重写的理解,达到能够独立熟练运用封装、继承和多态来解决实际问题的能力。教学评价方式以小组为单位,以完成案例的质量为评价标准,形成任务驱动,小组协作,质量与速度并存的课堂评价方式,促进学生的自主、创新学习的方式。

第6章集合和数组课程名称Java程序设计基础教程(慕课版)项目名称集合和数组任务名称集合和数组课时8项目性质□演示性□验证性 □设计性 J综合性授课班级授课日期授课地点教学目标能力目标:.具备使用集合框架解决问题的能力.具备使用数组解决问题的能力知识目标:.了解Collection,Map集合,List链表,Set集合的概念和使用.掌握集合遍历的应用.掌握数组的初始化与应用素质目标:.培养学生知识掌握和技能运用能力.培养学生团结合作、互帮互助的能力:教学内容.任务描述.任务展示与实现(1)通过操作链表实现链表的插入与删除(2)通过Map保存玩家的牌(3)通过循环控制语句实现程序.教师讲解本任务涉及的知识点.任务小结教学重点.链表的操作与应用.Iterator接口与增强型for循环教学难点.HashMap及TreeMap的使用.数组排序方法教学准备.装有JDK、Eclipse的电脑.教学课件PPT.教材:《Java程序设计基础教程(慕课版)》刘刚刘伟人民邮电出版社作业设计.编写洗牌发牌程序.编写代码实现数组排序教学过程教学过程一孵和教学内容与过程(教学内容、教学方法、组织形式、教学手段)织做好课前“5分钟”教学管理(多媒体、实训室),做好上课前的各项准备工作(打开电脑、打开课件、打开软件、打开U盘中的素材位置、打开授课计划、教案等),吸引学生注意力。课程喇【课前说明】本章介绍了集合与数组。在集合中着重介绍Set集合、List集合和Map集合,其中Set是无序不重复的集合,List是可重复的有序链表,Map是key值不重复的散列表,这些数据类型封装了实现算法,让开发者无须知道算法就可以高效地使用这些数据类型。之后介绍数组,数组是一种快速随机访问的数据类型。【目的】使学生从了解本单元的学习目标、学习重点、考评方式等方而明确学习本单元知识的要求和目标。课程幅艇五、讲解集合的概念集合框架则是为了表示和操作集合而规定的统一的标准的体系结构。集合框架包含三大部分:对外接口、接口实现和对集合运算的算法。Java提供了Collection的集合框架,在其内定义了很多抽象的数据类型,包括集(Set)^链表(List)、数组(Array)、树(Tree)和散列表(HashTable)等,另外还有比较特殊的映射(Map)。六、讲解集合的遍历Colleciton的遍历可以使用iterator()方法获取一个实现了Iterator接口的可遍历对象。如果是Map类型,则可以使用Map.Entry对象或者keySet()方法获取一个Set类型的key集合,或者使用values。方法获取一个Collection对象然后调用iterator()方法。七、讲解数组的使用数组的存取是以数组中的一个元素为单位进行的,一个数组中拥有的元素的个数是该数组的长度。在Java中,数组也是对象,需要动态地生成,数组一般分为一维数组、二维数组和多维数组。案例:1.HashMap及TreeMap的使用publicclassTreeMap2HashMapDemo(publicstaticvoidmain(String[]args){II创建HashMap对象Map<String,String>hashMap=newHashMap<>();II添加元素hashMap.put("Java,,»MJavaUser*');hashMap.put("C-tHCuser1');hashMap.put("C++","C++user);hashMap.putfGo","Gouser");System.out.printlnChashMap="+hashMap);//根据hashMap构建一个TreeMapTreeMap<String,String>treeMap=newTreeMapo(hashMap);System.out.println(MtreeMap='*+treeMap);HashMap<String,String>hMap=newHashMapo(treeMap);System.out.printlnC'hMap="+hMap);))魁4.编写一个自动发牌程序,模拟三人斗地主的摸牌场景。首先要给出提示,谁首先开始摸牌,实训并且摸牌要和现实摸牌一样,二人循环摸牌,最后还要剩余二张底牌,同时给出地主牌,摸到地主牌的玩家拥有三张底牌,三张底牌三人都可以看到。当三张底牌派发给地主后提示玩家摸牌结束。5.对于一个给定的数组,如果通过冒泡排序的方式进行实现,那么对一些元素庞大的任务而言,无疑是一个灾难,在猜数字的游戏中使用的中分法猜数字的方式能够快速且准确地缩小数字的所属范围。如果使用这种方式来排序,效率也会相应地高很多。总结通过学习,学生能够掌握Set集合、List集合、Map集合和数组的具体用法。评价本节课主要运用案例教学法,通过对集合和数组深入理解,掌握Set集合、List集合、Map集合和数组的基本特点,深入探讨Set集合、List集合、Map集合和数组的使用方法,通过实例的方法加强集合的遍历的理解,达到能够独立熟练运用Set集合、List集合、Map集合和数组来解决实际问题的能力。教学评价方式以小组为单位,以完成案例的质量为评价标准,形成任务驱动,小组协作,质量与速度并存的课堂评价方式,促进学生的自主、创新学习的方式。

第7章文件及流课程名称Java程序设计基础教程(慕课版)项目名称文件及流任务名称文件及流课时6项目性质□演示性□验证性 □设计性 J综合性授课班级授课日期授课地点教学目标能力目标:.具备使用File类解决问题的能力.具备使用输入输出流解决问题的能力知识目标:.了解File的常用API的概念和使用.掌握字节流和字符流的应用素质目标:L培养学生知识掌握和技能运用能力.培养学生团结合作、互帮互助的能力:教学内容.任务描述.任务展示与实现(1)首先需要读取控制台的输入内容,获取用户想要处理的下一个操作内容。(2)根据输入的指令和输入内容,进行相应的操作,例如创建文件、删除文件等。(3)当输入指定4时,需要读取文件内容,判断文件内容是否符合要求,如果内容符合要求,则循环执行文件内容。.教师讲解本任务涉及的知识点.任务小结教学重点.File的常用API.字节流和字符流教学难点.目录文件遍历的方法.字节流和字符流的区别教学准备.装有JDK、Eclipse的电脑.教学课件PPT.教材:《Java程序设计基础教程(慕课版)》刘刚刘伟人民邮电出版社作业设计8.编写一个文件管理系统,通过控制台的输出内容进行文件操作教学过程教学过程一孵和教学内容与过程(教学内容、教学方法、组织形式、教学手段)织做好课前“5分钟”教学管理(多媒体、实训室),做好上课前的各项准备工作(打开电脑、打开课件、打开软件、打开U盘中的素材位置、打开授课计划、教案等),吸引学生注意力。课程喇【课前说明】本章介绍文件和流。在Java中,文件的管理依靠File类,而文件的读写则依靠输入输出流来读取。输入输出流是Java中非常重要的内容,其使用范围比较广泛,例如项目中配置文件的读取、xml类型文件的读取和OFFICE文件的读取等,都是使用输入输出流进行的,Java的Web在实际应用中,也是依靠流的形式进行客户端的浏览器界面与应用服务器的交互。【目的】使学生从了解本单元的学习目标、学习重点、考评方式等方而明确学习本单元知识的要求和目标。课程幅艇八、讲解File类的使用文件有其固有属性,如大小、创建时间、读写属性等,同时还有创建与删除的操作,这些在Java中都由File类来实现。为了方便开发者处理文件,File类提供了丰富的API供开发者使用。九、讲解输入输出流的概念在计算机中,数据的传输一般使用的是二进制的数据流,流中的数据是按字节进行的,所有的数据流都可以使用字节流进行读写操作cBufferedReader和BufferedWriter这两个对象可以对流进行按行读取。十、讲解数组的使用案例:1.文件的固有属性importjava.io.File;publicclassFilelnherentAttributeDemo{publicstaticvoidmain(String[]args){Filefile=newFile("lnherenetAttributeTest.txt");if(file.existsO){System.outprintln("文件的长度:"+file.lengthO);System.outprintln("文件的绝对路径:"+file.getAbsolutePath());System.outprintlni”文件的相对路径:"+file.getPathO);System.outprintln。文件是否是隐藏文件:+file.tsHiddenO);System.outprintln("是否是文件类型file.isFileO);System.outprintln("是否是文件夹类型:"+file.isDirectoryO);))>螂6.编写一个文件管理系统,通过控制台的输出内容进行文件操作:1-创建文件、2-删除文件、实训3-复制文件和44艮据输入文件名称,读取文件内容执行对应的指令。当用户输入1时,会读取用户的下一行输入,会根据用户的名称和后续输入创建一个文件并将输入录入文件:当用户输入2,则会检索当前目录下的文件,如果文件存在,则删除该文件,否则,提示文件不存在:当用户输入3,则读取用户输入的文件名称并进行复制,默认是文件名称加后缀”.copy”标注:当用户输入4,会查找当前目录下的文件,如果文件存在,则执行文件的内容:当用户输入“exit”并在后续输入“Y”则退出当前系统。总结通过学习,学生能够掌握File类、字节流、字符流的具体用法。评价本节课主要运用案例教学法,通过对文件和流深入理解,掌握File类、字节流、字符流的基本特点,深入探讨File类、字节流、字符流的使用方法,通过实例的方法加强File类和输入输出类的理解,达到能够独立熟练运用File类、字节流、字符流来解决实际问题的能力。教学评价方式以小组为单位,以完成案例的质量为评价标准,形成任务驱动,小组协作,质量与速度并存的课堂评价方式,促进学生的自主、创新学习的方式o

第8章日期和时间课程名称Java程序设计基础教程(慕课版)项目名称日期和时间任务名称日期和时间课时4项目性质□演示性口验证性 □设计性 J综合性授课班级授课日期授课地点教学目标能力目标:.具备使用Date类解决问题的能力.具备使用Calendar类解决问题的能力知识目标:.掌握Date类的应用.掌握Calendar类的应用素质目标:L培养学生知识掌握和技能运用能力.培养学生团结合作、互帮互助的能力:教学内容.任务描述.任务展示与实现(1)将字符串类型的数据转换成Calendar类型,并在计算结束后返回字符串类型的日期。(2)由日期计算星期数.教师讲解本任务涉及的知识点.任务小结教学重点Date类的应用Calendar类的应用教学难点1.日历类型的计算教学准备.装有JDK、Eclipse的电脑.教学课件PPT.教材:《Java程序设计基础教程(慕课版)》刘刚刘伟人民邮电出版社作业设计9.编写一个产品过期提醒的程序,能够自动根据促销要求在适当的时候进行促销活动教学过程教学过程一孵和教学内容与过程(教学内容、教学方法、组织形式、教学手段)织做好课前“5分钟”教学管理(多媒体、实训室),做好上课前的各项准备工作(打开电脑、打开课件、打开软件、打开U盘中的素材位置、打开授课计划、教案等),吸引学生注意力。课程喇【课前说明】本章着重讲解了日期类Date和日历类Calendar。日期类Date一般作为字符串类型的日期与日历类Calendar的中间对象,日期类Date方便日期的存储和冲算。其中SimpleDateFormat是转换字符串类型的日期和日期类型的操作类,该类支持多重格式的日期,例如2017-03-10和2017-03-1000:00:00类型等,在这两个常用的格式之外,还有其他类型的格式,如yy-MM-dd、yy/MM/dd等。【目的】使学生从了解本单元的学习目标、学习重点、考评方式等方而明确学习本单元知识的要求和目标。课程幅艇十一、讲解Date类的使用Date类的无参构造方法是将当前系统亳秒值传入进行初始化的,Date类还有一个根据传入的亳秒值获取日期对象的构造函数,无参构造方法就是将系统当前亳秒值作为亳秒值传入该构造函数实现的。十二、讲解日历类Calendar的使用Calendar类型是对日期的计算操作,K本身可以由Date类型来设置需要进行计算的原点时间,同时也能快速地转换成Date类型的对象并输出。因为编程语言大多以0为初始值,所以Calendar类中的一月份的数字值实际上是0。由于西方国家认为星期日是一个星期的开始,所以,SUNDAY对应的数字是1,而MONDAY对应的数字是2,其他以此类推。案例:1.当前时间与计算机元年publicclassComputerTimeDemo{publicstaticvoidmain(StringOargs)throwsParseException{Dateday=newDate(O);//获取时间原点longtime=System.currentTimeMillis();//获取当前时间相较于时间原点的亳秒数Datedate=newDate(time);H获取Date类型的对象,时间默认为当前时间"Date类型的该方法已好被废弃,不建议使用,但为了演示方便,智且使用System.out.pmtln(”当前时间:'1+date.toLocaleStringO);Systemout.pmtin。计算机时间原点:n+day.toLocaleStringO);longbetween=date.getTimeO-day.getTime();Systemout.pmtin。系统当前时间与计算机时间原点的空秒值;"+between);Systemout.pmtln(”当前时间与原点时间的差值与系统获取的当前亳秒值的差值:”+(time-between));)2.万年历publicclassMonthlyCalendarDemo{//每个星期的星期staticfinalStringQweekDays=C星期日",“星期一星期二”「星期三”「星期四”,“星期五“,“星期六)publicstaticvoidmain(StringOargs){Scannerscan=newScanner(System.in);//获取从标准输入中读取数据的Scanner对象intcounter=0;System.outprintlnC1请输入年份:“);intyear=scan.nextlnt();System.outprintlnC1请输入月份:“);intmonth=scan.nextlnt()-1;//获取月份〃以指定的年份、月份和该月份的第一天作为开始创建对象GregorianCalendargCale=newGregorianCalendar(year,month,1);//获取当前月份的总天数inttotalDay=gCale.getActualMaximum(Calendar.DAY_OF-MONTH);intstartWeekDay=gCale.gettCalendar.DAY,OF-WEEK)-1;for(StringweekDay:weekDays){System.out.print(weekDay+" //三个空格)System.out.printlnO;//换行for(counter=0;counter<startWeekDay;counter++){System.out.print(M");//七个空格}for(intday=1;day<totalDay;day++){System.out.printfr%2d",day);counter++;if(counter%7==0){System.out.printlnO;II决行))))7.编写一个产品过期提醒的程序,能够自动根据促销要求在适当的时候进行促销活动,并在产品过期前10天提醒产品即将过期。产品的过期时间由产品的生产日期及保质期来确定。程序需要正确地计算产品的到期日期,并且根据到期日期来执行促销活动和过期提醒。

总结通过学习,学生能够掌握Date类和Calendar类的具体用法。评价本节课主要运用案例教学法,通过对Date类和Calendar类理解,掌握Date类和Calendar类的基本特点,深入探讨Date类和Calendar类的使用方法,通过实例的方法加强Date类和Calendar类的理解,达到能够独立熟练运用Date类和Calendar类来解决实际问题的能力。教学评价方式以小组为单位,以完成案例的质量为评价标准,形成任务驱动,小组协作,质量与速度并存的课堂评价方式,促进学生的自主、创新学习的方式。

第9章反射、异常和枚举课程名称Java程序设计基础教程 丫百口々为(慕课版) 项目名称反射、异常和枚举任务名称反射、异常和枚举 课时6项目性质□演示性口验证性 □设计性 J综合性授课班级授课日期授课地点教学目标能力目标:.具备使用反射解决问题的能力.具备使用异常解决问题的能力.具备使用枚举解决问题的能力知识目标:.掌握反射的应用.掌握异常和枚举的应用素质目标:.培养学生知识掌握和技能运用能力.培养学生团结合作、互帮互助的能力:教学内容.任务描述.任务展示与实现(1)从源对象复制属性到目标对象属性中去,需要以目标对象属性为准,源对象中的多余属性不做考虑(2)目标对象属性在源对象中不存在的,不进行复制(3)目标属性类型与源目标属性类型不一致的,也默认为属性不存在,不进行考虑.教师讲解本任务涉及的知识点.任务小结教学重点7,反射的应用8.异常的应用教学难点1.反射的应用2.异常捕获顺序教学准备.装有JDK、Eclipse的电脑.教学课件PPT.教材:《Java程序设计基础教程(慕课版)》刘刚刘伟人民邮电出版社作业设计10. 利用反射技术,获取目标对象的域方法,获取其setter方法的参数类型和域字段名称,获取源对象中的对应域字段的getter方法,判断域的类型是否一致,如果一致,则进行值复制教学过程教学过程一孵和教学内容与过程(教学内容、教学方法、组织形式、教学手段)织做好课前“5分钟”教学管理(多媒体、实训室),做好上课前的各项准备工作(打开电脑、打开课件、打开软件、打开U盘中的素材位置、打开授课计划、教案等),吸引学生注意力。课程喇【课前说明】本章主要介绍了反射、异常和枚举3个知识点。反射,是通过类名找到类信息并对其进行处理的一种技术,这种技术的优点是可以在运行时去执行这些逻辑,简化了代码,方便了程序的开发,反射在目前流行的Spring框架中应用广泛。Spring的对象管理就是通过反射实现的。异常是Java的一大开发利器,如果说垃圾回收机制让开发者真正摆脱了内存泄露问题的话,那么异常则是让开发者摆脱了通篇阅读代码找问题的无奈cJava的异常栈信息会打印出问题出现的代码所在类和异常抛出的行数,同时也会提示开发者异常是因何产生的。这种完善的异常提醒机制让问题的发现与解决更加高效。枚举是Java中一个特殊的类型,它具有“小而美”的特点,枚举的使用,让代码的阅读更加容易:同时,通过使用枚举也能避免一些因疏忽或者其他原因导致的小问题。【目的】使学生从了解本单元的学习目标、学习重点、考评方式等方面明确学习本单元知识的要求和目标。课程内容触十三、讲解反射的使用反射(Reflection)是Java程序开发语言的特征之一,它允许Java在运行时添加新的类或是创建指定类的对象,并将属性值动态地赋值给对象。十四、讲解异常的使用Java的异常处理是面向对象的,也就是可以将异常当作对象来处理。.当程序运行过程中出现了异常情况时,一个异常就产生了并交给运行时系统,运行时系统通过寻找对应的代码来处理这个异常,从而确保系统不会宕机或对操作系统造成损害。十五、讲解枚举的使用枚举的关键字是enumo该关键字可以将一组具有别名的值的有限集合创建成一种新的类型。案例:1.Java的String类的反射publicclassSimpleRefIDemo{publicstaticvoidmain(StringOargs){try(Classc=Class.forNameCjava.Iang.String");MethodQms=c.getDeclaredMethods();//获取类中声明的方法for(Methodm:ms){System.out.println(m);)}catch(ClassNotFoundExceptione){e.printStackTrace();)))2.异常的捕获顺序publicclassCatchOrderDemo{publicstaticvoidmain(StringOargs){String[]strs=newStringO{M111");try(Stringstr=strs[3];}catch(ArraylndexOutOfBoundsExceptione){System.out.printlnCIndexOutOfBoundsException异常被捕获!");}catch(Exceptione){System.out.println("Exception异常被捕获!”);)))魁8.在Spring框架中,有一个BeanUtils类,专门用于两个对象间相同属性域的值的复制,一般实训用于业务对象和数据库对象的转换,其实现也是借助了反射技术。利用反射技术,获取目标对象的域方法,获取其setter方法的参数类型和域字段名称,获取源对象中的对应域字段的getter方法,判断域的类型是否一致,如果一致,则进行值复制。总结通过学习,学生能够掌握反射、异常和枚举的具体用法。评价本节课主要运用案例教学法,通过对反射、异常和枚举的理解,掌握反射、异常和枚举的基本特点,深入探讨反射、异常和枚举的使用方法,通过实例的方法加强反射、异常和枚举的理解,达到能够独立熟练运用反射、异常和枚举来解决实际问题的能力。教学评价方式以小组为单位,以完成案例的质量为评价标准,形成任务驱动,小组协作,质量与速度并存的课堂评价方式,促进学生的自主、创新学习的方式。

第10章并发编程课程名称Java程序设计基础教程(慕课版)项目名称并发编程任务名称并发编程课时6项目性质□演示性口验证性 □设计性 J综合性授课班级授课日期授课地点教学目标能力目标:.具备创建线程的能力.具备调度线程的能力.具备使用多线程解决问题的能力知识目标:.了解进程和线程的区别和联系.掌握线程的创建和调度方法.掌握多线程的应用素质目标:L培养学生知识掌握和技能运用能力2.培养学生团结合作、互帮互助的能力:教学内容.任务描述.任务展示与实现(1)需要处理的是文件夹,(2)如果当前文件夹下有子文件夹,则将子文件夹当作另一个任务,加入到处理任务链表中来(3)汇总所有任务的计算结果,即指定文件夹的总大小.教师讲解本任务涉及的知识点.任务小结教学重点9.线程的创建10.线程的调度教学难点.继承Thread类.同步与互斥教学准备.装有JDK、Eclipse的电脑.教学课件PPT.教材:《Java程序设计基础教程(慕课版)》刘刚刘伟人民邮电出版社作业设计11. 多线程获取指定目录文件大小,并计算耗时教学过程教学过程一孵和教学内容与过程(教学内容、教学方法、组织形式、教学手段)织做好课前“5分钟”教学管理(多媒体、实训室),做好上课前的各项准备工作(打开电脑、打开课件、打开软件、打开U盘中的素材位置、打开授课计划、教案等),吸引学生注意力。课程喇【课前说明】本章讲解了进程和线程的区别和联系、线程的创建方式、线程的调度问题,梳理了线程的5种状态:新建、就绪、阻塞以及运行状态和死亡状态,涉及线程的休眠.、同步和死锁等问题也都做了讲解;并讲解了线程池技术和带有返回值的Callable对象和接收返回值的Future对象,对Future对象的isDone。方法和get。方法做了简单介绍。【目的】使学生从了解本单元的学习目标、学习重点、考评方式等方而明确学习本单元知识的要求和目标。课程幅艇十六、讲解线程的创建方法线程的创建方式,一种是继承Thread类,另一种是实现Runnable接口,继承Thread类后可以直接调用start。方法启动线程,而实现Runnable接口则需要使用Thread类进行包装后方可调用start()方法。十七、讲解线程的调度方法梳理了线程的5种状态:新建、就绪、阻塞以及运行状态和死亡状态,涉及线程的休眠、同步和死锁等问题也都做了讲解。十八、讲解多线程的使用Java中的线程池技术是运行场景最多的并发框架,几乎所有需要异步或者并发执行任务的程序都可以使用线程池技术。合理使用线程池技术可以降低线程创建和销毁造成的消耗,提高相应速度和提高线程的可管理性。Callable用法和Runnable类似,只不过调用的是call。方法,而不是run()方法,该方法有一个泛型返回值类型,可根据需要指定。案例:Thread突现多线程publicclassThreadDemo{publicstaticvoidmain(StringOargs){for(inti=0;i<10;i++){//创建10个MyTh「ead类的对象,并运行MyThreadthread=newMyThread();thread.start();))>//继承了Thread类的类classMyThreadextendsThread{©Overridepublicvoidrun(){//重写父类的run方法for(inti=0;i<3;i++){〃循环打印输出信息System.out.println(Thread.currentThread().getName()+”・正在执行!”);)))计划任务线程池publicclassSchedulePoolDemo{publicstaticvoidmain(StringOargs){ScheduledExecutorServicees=Executors.newScheduledThreadPool(l);II创建一个计划任务线程池,参数表示线程池的个数es.scheduleAtFixedRate(newRunnable(){©Overridepublicvoidrun(){System.out.println("每1秒执行一次:M+System.currentTimeMillisO);}),2,1,TimeUnit.SECONDS);))9.多线程获取指定目录文件大小,并计算耗时。多线程计算文件大小,可以将一个文件夹当作实训一个子任务处理,最终每个任务都是一个个文件,统计每个文件的大小,递归累加即可完成任务。如果是单线程,则是递归计算,每次计算完一个只有文件类型的文件夹后返回父级目录继续计算下一个文件或者文件夹。相比而言,多线程的多个任务同时计算势必在速度上占优势。在JDK1.7之后,Java推出了一个Fork/Join框架,可以有效分割任务,最后汇总,极大地简化了多线程的使用。本次动手任务主要使用Fork/Join框架来实现多线程的文件大小计算。

总结通过学习,学生能够掌握进程和线程的区别和联系、线程的创建方式、线程的调度问题以及多评价线程的相关用法。本节课主要运用案例教学法,通过对进程和线程的理解,掌握进程和线程的基本特点,深入探讨进程和线程的使用方法,通过实例的方法加强进程和线程的理解,达到能够独立熟练运用进程和线程来解决实际问题的能力。教学评价方式以小组为单位,以完成案例的质量为评价标准,形成任务驱动,小组协作,质量与速度并存的课堂评价方式,促进学生的自主、创新学习的方式。

版权声明


相关文章:

  • java判断是基础类型2024-10-21 14:50:02
  • java 基础类型长度2024-10-21 14:50:02
  • java 基础提升题2024-10-21 14:50:02
  • java基础数据类型取值范围2024-10-21 14:50:02
  • java基础一般问什么软件2024-10-21 14:50:02
  • java核心基础688教学2024-10-21 14:50:02
  • java基础概念笔记2024-10-21 14:50:02
  • java基础会问什么2024-10-21 14:50:02
  • java高级基础选择题2024-10-21 14:50:02
  • java基础变量作用域2024-10-21 14:50:02