《Java程序设计》课程教学大纲.doc_第1页
《Java程序设计》课程教学大纲.doc_第2页
《Java程序设计》课程教学大纲.doc_第3页
《Java程序设计》课程教学大纲.doc_第4页
《Java程序设计》课程教学大纲.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

Java程序设计课程教学大纲开课系信息技术课程类别专业基础课修订时间2011年11月学分4总学时64理论32实验/上机32课 程 简 介课程简介: Java程序设计是信息管理与信息系统专业的专业基础课,主干课程,在计算机网络化时代,是开发各种网络应用的最有力的工具,无论是服务器端或者桌面和移动终端开发,它都有极广泛的应用。课 程 大 纲一、课程的性质与任务本课程是计算机科学与技术专业的一门专业限选修课程。课程的任务是使学生掌握Java程序设计语言,理解面向对象程序设计的思路和方法,掌握网络编程的基本技术,培养学生的编程能力,养成良好编码的习惯,为将来参与实际项目的开发奠定坚实的基础。二、课程的目的与基本要求开设本课程的目的是让学生掌握这一在科研和市场应用方面非常重要的语言及其技术;通过本课程使学生掌握java技术的核心概念,编程方法;培养学生掌握面向对象的思想和程序设计方法;完成本课程的学习后能够熟练的、综合应用Java技术和面向对象的思想编写程序解决现实生活中的问题。完成如下教学目标:1. 知识教学目标: 理解和掌握JAVA语言的基本语法和语义,掌握标准程序和小应用程序的开发方法,掌握数据库、网络编程的基本开发方法。 2. 能力教学目标: 熟练使用JBuilder开发Java程序。 3. 思想教育目标: 学会良好的编程习惯。三、面向专业信息管理与信息系统(本科)四、先修课程计算机导论C+程序设计五、本课程与其它课程的联系 本课程的先修课程为计算机导论和C+程序设计,后续课程为WEB程序设计,J2ME程序设计等。计算机导论为学生提供计算机硬件、软件的相关基本概念,C+程序设计提供高级语言程序设计的基础。六、教学内容安排、要求、学时分配及作业第1章 Java概述 教学内容:1-1 程序设计语言 1-2 面向对象的程序设计语言Java 1-3 Java的开发和运行环境 1-4 开发和运行Java程序的步骤 本章重点:开发和运行Java程序的步骤第2章 Java基础 教学内容:2-1 Java符号 2-2 数据类型与变量、常量 2-3 语句、表达式和运算符 2-4 数据类型的转换 本章重点:数据类型与变量、常量 语句、表达式和运算符 第3章 Java流程控制 教学内容:3-1 选择结构程序设计 3-2 循环结构控制 3-3 跳转语句 本章重点:选择、循环结构第4章 方法 教学内容:4-1 方法声明4-2 方法调用4-3 参数传递 本章重点:方法的声明、调用第5章 数组 教学内容:5-1 一维数组 5-2 多维数组 5-3 数组的基本操作 5-4 数组应用举例 5-5 数组参数 5-6 字符串 本章重点:数组的声明和引用,应用。第6章 面向对象的程序设计概念 教学内容:6-1 概念 6-2 类的概念 6-3 类的定义 6-4 对象 6-5 类的成员变量 6-6 方法的引用和修饰 本章重点:类的声明,对象的创建,成员的引用,第7章 类的封装、多态和继承 教学内容:7-1 类的封装 7-2 多态机制 7-3 类的继承 本章重点:封装、继承、多态第8章 接口和包 教学内容:8-1 抽象类和方法8-2 接口 8-3 包 本章重点:抽象类、接口、包的运用第9章 异常处理 教学内容:9-1 Java异常处理机制 9-2 异常处理方法 本章重点:异常处理机制第10章 输入与输出 教学内容:10-1 输入输出类库 10-2 标准输入输出 10-3 文件操作 本章重点:标准输入输出 、 文件操作 第11章 图形用户界面 教学内容:11-1 Java的图形用户界面AWT包 11-2 Java语言中的事件处理 11-3 Swing包 本章重点: GUI设计第12章 高级用户界面GUI设计 教学内容:12-1 布局管理器 12-2 键盘和鼠标事件处理 12-3 菜单设计 12-4 对话框设计 12-5 窗口 本章重点:高级GUI设计第13章 Applet程序 教学内容:13-1 Applet简介 13-2 Applet程序举例 本章重点:Applet程序设计第15章 数据库编程 15-1 数据库简介 教学内容:15-2 使用JDBC连接数据库 15-3 建立数据源 15-4 Java数据库编程 本章重点:数据库编程七、实验名称与类别:序号实验名称学时实验类别1Java开发环境2操作型2Java基础2验证型3基本控制结构2设计型4方法2设计型5数组2设计型6类和对象2设计型7继承和多态2设计型8接口和包2设计型9异常处理2设计型10输入与输出2设计型11图形用户界面设计2设计型12Swing组件2设计型13Applet程序2设计型14多线程2设计型15数据库编程2设计型16网络编程2设计型合计32注:实验类别指:演示型、操作型、验证型、综合型、设计型、研究创新型八、实验目的、内容与要求实验1 Java开发环境实验目的 (1)安装J2SE。 (2)熟悉J2SE开发环境。 (3)了解Java Application的程序结构。实验内容 (1)安装J2SE JDK是由Sun公司推出的Java开发工具包,J2SE提供Java标准的JDK开发平台,学习Java心须从J2SE开始。日前Sun公司发布的最新版本是JDK6O或称为JDKl6。可以登录到Sun公司网站http:/javasuncom免费下载。下载软件是自解压的压缩文什,运行该压缩文件,按照屏幕提示操什,即可以完成安装。 (2)设置J2SE 为了方便编译和平运行Java程序,需要对J2SE进行设置。设置方法非常简单,只需要对Path和Classpath这两个环境变量进行正确设置。假定J2SE的安装H录为C:ProgramFlesJavadkl51,需将Path设置到C:Program Filesjavadkl51bin,将Classpath设置为C:Program Filesjavadkl51lib,(3)使用J2SE命令J2SE主要包含以下命令,应该熟练掌握。 Javac命令。程序javacexe的功能是编译Java源程序,命令格式为javac Java源程序文件名java Java源程序文件的扩展名为java,编译时必须列出。经过编译得到的字节码文件基本名持不变,扩展名为class,称为类文件。 利用Windows的记事本或其他的文本编辑器输入如下的Java源程序: public class example public static void main(String args) System.out.println(“Hello,Java!”); 将该程序以文件名Examplejava保存在磁盘的某一目录,如C:java。 进入命令行执行方式,在命令行输入命令: javac Exampleava 编译源程序Examplejava,生成类文件Exampleclass。 运行Java类文件使用的解释程序是javaexe,命令格式为: java Java类文件名 洼章:Java类文件的扩展名为class,但在运行时不必列出 要运行前面生成的类文件Exampleclass,在命令行输入以下命令: java Example 如果成功运行,将得到程序的运行结果,在屏幕上显示: Hello Java! 实验要求 (1)安装J2SE 首先从Sun网站http:javasuncom或其他网站下载J2SE,然后将J2SE安装到某一指定目录。 (2)设置J2SE 根据具体的J2SE安装日录进行设置。 (3)使用J2SE命令利用文本编辑器输入实验内容部分指定的Java源程序,编译并运行之。 实验2 Java基础 实验目的 ()掌握Java语言的各种数据类型。 (2)熟悉运算符和表达式。 (3)学会编写简单程序, 实验内容 ()下面是一个简单的Java程序,将多种类型变量通过各种运算符组成不同的表达式, 并将运算结果赋值给同类型的变量,使用println()方法输出各变量的值。 publ ic class ExampleTest public statlc void main(String args) znt nO=(11+20)*35; Systemoutprintln(“nO=”+nO); nO+; Systemoutprintln(“nO=”+nO);boolean bool=false; bool=true&!bool; SystemOutprintln(“bool=”+bool); byte bValue;OxlO; Systemoutprintln(“bValue=”+bValue);Bool=(nobValue); Systemoutprintln(“bool=”+bool); 分析、上机编译并运行该程序。 (2)编写一个Java程序,计算半径为30的圆周长和面积并输出计算结果。 (3)编写一个Java程序,计算一个给定底和高的直角三角形的斜边长 注童:直角三角形的斜边长length=Math,sqrt(base*base+height*height),其中base和height 为两条直角边的边长 实验要求 (1)分析程序中各运算符的作用、表达式的功能和表达式的值,并和程序输出结果比较。 (2)为了使程序易读,在程序中添加适当的注释;为了使程序输出结果清晰明了,应该 输出相应的提示性信息;上机编译并运行该程序。 (3)首先将变量base、height和length都定义为double型,编译并运行程序:将length 类型更改为float型后(其他保持不变),再编译该程序,观察会出现什么结果并分析原因。 实验3 基本控制结构 实验目的 (1)掌握条件语句的使用。 (2)掌握循环语句的使用。 (3)掌握通过命令行参数接收数据。 实验内容 (1)求a+aa十aaa+aa(n个)的和,其中a为19之间的整数。例如,如当a=3、 n=4时,求3+33+333+3333的和 (2)给定一个正整数m,统计m的位数,分别打印每一位数字,再按照逆序打印出各位数字。 (3)鸡和兔装在同一笼中,已知它们在一起共有f只脚,h只头,求有多少只鸡和多少 只兔。 实验要求 ; (1)从命令行输入1,9之间的整数a,当所求的和大于10的6次方时,输出相应的a值及所求的和值。 (2)从命令行输入主整数m,m的植不应该超过99999,否则给出错误信息。 (3)从命令行输入正整数f和h(f和h要满足一定的条件),计算并输出鸡和兔的数目: 实验4 方 法 实验目的 (1)掌握方法的定义和参数传递。 (2)掌握方法的嵌套。 (3)了解方法的递归调用。 实验内容 (1)编写判断素数的方法。 (2)编写打印Fibonacci数列的方法。 (3)编写计算x的n方的递归方法。 实验要求 (1)判断素数的方法通过参数形式接收待判断的数。如果是素数,输出“Yes,XXX媳: prime”信息,否则输出“No,XXX is not a prime”信息。其中XXX代表待判断的数。运行程序时,待判断的数通过命令行参数输入 (2)打印Fibonacci数列的方法通过参数形式接收打印的项数。运行程序时,打印的项数 通过命令行参数输入。 (3)计算x的n方的递归方法通过参数形式接收x和n。计算后的输出格式为:x*u=XXX。 其中xxx代表x的n方的值。运行程序时,x和n的值通过命令行参数输入。 实验5 数组 实验目的 (1)掌握数组的定义和使用方法。 (2)熟悉数组的排序、查找等算法。 (3)掌握字符数组的使用方法。 实验内容 (1)编写数组的排序程序。 (2)编写折半查找法的程序 (3)编程实现:产生一个112之间的随机整数,并根据该随机整数的值,输出对应月 份的英文名称。 (4)编程实现:建立包含10个字符串数据的一维数组,每个字符中数据的格式为“月月日日年年”,例如06/25/04,将每个日期采用类似“25thJune2004”的格式输出。 实验要求 (1)在数组的排序程序中,随机产生20个整数,对其按照升序进行排列,并对排序前 后的数组按照每行5个数的方式输出o (2)通过命令行输入一个数,在排序后的数组中,采用折半查找法查找该数在数组中的位置。 (3)用赋初值的方法,将112月的英文月份名赋给数组元素,根据所产生的随机整数值,输出对应的数组元素值。 (4)用赋初值的方法,将10个日期格式的字符串数据赋予数组元素,然后按照指定格式输出。 实验6 类和对象实验目的 (1)掌握类和构造方法的定义。 (2)理解静态和非静态成员变量的区别。 (3)掌握创建类实例的方法。实验内容 (1)设计一个Dog类,有名字、颜色和年龄属性,定义构造方法初始化这些属性,定义输出方法show()显示其信息。编写应用程序使用Dog类。 (2)编写一个学校类,其中包含成员变量line(录取分数线)和对该变量值进行设置和获取的方法。 编写一个学生类,它的成员变量有考生的name(姓名)、记(考号)、total(综合成绩)、sports(体育成绩)。它还有获取学生的综合成绩和体育成绩的方法。 编写一个录取类,它的一个方法用于判断学生是否符合录取条件。其中录取条件为:综合成绩在录取分数线之上,或体育成绩在90以上并且综合成绩大于300。在该类的main()方法中,建立若干个学生对象,对符合录取条件的学生,输出其信息及“被录取”。实验要求 (1)Dog类的构造方法带有3个参数,分别用于接收名字、颜色和年龄。 (2)学生类的构造方法带有4个参数,分别用于接收学生的姓名、考号、综合成绩和体育成绩。学校类仅包含静态成员变量和方法。 实验7 类的继承和多态机制实验目的 、 (1)掌握类的继承机制。 (2)熟悉类中成员变量和方法的访问控制。 (3)掌握方法的多态性。 实验内容 (1)设计一个表示用户的类User,类中有用户名、口令(私有的)和记录用户数(静态;的成员变量。定义类的构造方法、设置和获取口令的方法及返回类对象信息的方法(包括用户名和口令)。编写应用程序测试User类。 (2)设计一个表示二维平面上点的类Point,包括表示坐标位置的protected类型的成员变量x和y,获取和设置x和y值的public方法。 设计一个表示二维平面上圆的类Circle,它继承自类Point,还包括表示圆半径的protected : 类型的成员变量r、获取和设置r值的public方法、计算圆面积的pubic方法。 设计一个表示圆柱体的类Cylinder,它继承自类Circle,还包括表示圆柱体高的protected 类型的成员变量h、获取和设置h值的pubHc方法、计算圆柱体体积的pubUc方法。 建立若干个Cylinder对象,输出其轴心位置坐标、半径和高及其体积的值。 实验要求 (1)User类有3个构造方法(没有参数;有一个参数,用于初始化用户名;有两个参数, 分别用于初始化用户名和口令)。 (2)Point、Circle和Cylinder类都含有参数的构造方法,初始化成员变量。子类的构造方法调用父类的构造方法,对父类中的成员变量初始化。 实验8 接口和包 实验目的 (1)熟悉抽象类和接口的用法。 (2)了解Java语言实现多继承的途径。 实验内容 (1)定义一个抽象类Shape,它包含一个抽象方法getArea(),从Shape类派生出Rectangle和Circle类,这两个类都用getArea的方法计算对象的面积。编写应用程序使用Rectangle和 Circle类。 (2)学校中有教师和学生两类人,而在职研究生既是教师又是学生。设计两个接口 StudentInterface和TeacherInterface。其中,StudentInterface接口包括setFee()和getFee0方法,分别用于设置和获取学生的学费;TeacherInterface接口包括setPay()和getPay()方法,分别用于设置和获取教师的工资。 定义一个研究生类Graduate,实现StudentInterface接口和TeacherInterface接口,它的成员变量有name(姓名)、seX(性别)、age(年龄)、fee(每学期学费)、pay(月工资)。 创建一个姓名为“zhangsan”的研究生,统计他的年收入和学费,如果收入减去学费不 足2000元,则输出“provide a loan”(需要贷款)信息。 实验要求l (1)定义Rectangle和Circle类的构造方法,初始化成员变量。 (2)在Graduate中实现各个接口定义的抽象方法。 实验9异常处理 实验目的 (1)熟悉异常处理方法。 (2)熟悉常见异常的捕获方法。 实验内容 (1)编写一程序,生成和捕获NegativeArraySizeException和IndexOutOfBoundsException类型的异常。 (2)在(1)的基础上,再生成和捕获NullPointerExcepfion类型的异常。 (3)阅读下列的divide(iht, int)方法,指出catch(ArithmeticException e),catch (ArrayIndexOutOfBoundsException e)和finally块中的语句分别在什么情况下执行? public static int divide(intarray,int index) try System,outprintln(“nFirst try block in divide()entered”); arrayindex+2)=arrayindexarrayindex+1; Systemoutprintln(“Code at end Of first try block in divide ()”) ; return arrayindex+2; ) catch(ArithmeticException e) Systemoutprintln(“Arithmetic exception caught in divide()”); catch(ArraylndexOutOfBoundsException e) Systemoutprintln(“Index_out_of_bounds exceptioncaught individe()”); finally SystemOutprintln(“finally block in divide()”); Systemoutprintln(“Executing code after try block in divide()”); return arrayindex+2); ) (4)通过下列main(Sning)方法,调用(3)中的divide(int,int)方法,分析其运行结果,并将其与实际运行结果进行比较。 public static void main(Stringargs) int x=10 5, O); Array Of three integers try Systemoutprintln(“First try block in main()entered”); Systemoutprintln(“result:”+divide(xO);NOerror x1=0;Will cause a divide by zero Systemoutprintln(“result:+divide(x,0);Arithmetic error x1=1;Reset to prevent divide by zero Systemoutprintln(“result;”+divide(x,1);Index error catch(ArithmeticException e) Systemoutprintln(“Arithmetic exception caught in main()”); catch(ArraylndexOutOfBoundsException e) Systemoutprintln(“Index_out ofounds_exception caught in main()”); ) Systemout,println(“Outside first try block in main()”); Systemoutprintln(“nPress Enter LO exit”); This try block is just to pause the program before returning try SystemOutprintln(“In second try block in main()”); Systeminread();Pauses waiting for input return; catch(I0Exception e) The read()method can throw exceptions Systemoutprintln(“IO exception caught in main()”); finally This will always be executed Systemoutprintln(“finally block for second try block in main()”); Systemoutprintln(“Code after secondtry block in main()”); 实验要求 (1)程序中生成且捕获到NegafiveArraySizeExcepdon和IndexOutOfBoundsException类型的异常,并显示捕获到的异常信息。 (2)在(1)的基础上生成且捕获到NullPointerException类型的异常,并显示捕获到的 异常信息。 (3)通过分析指出catch(ArithmeticExceptione),catch(ArraylndexOutOfBotmdsExcepfione)和finally块中语句的执行条件。 (4)结合给出的main(String1)方法,分析程序的运行结果(显示信息)。上机实际运行程序,将实际得到的运行结果和分析结果进行比较,判断是否真正地熟悉了异常的处理机制。 实验10 输入与输出 实验目的 (1)热悉文件流操作方法。 (2)应用文件流操作文件。 实验内容 (1)利用流操作,在屏幕上显示文本文件内容及文件的路径、修改时间、大小、长度、 可读性和可修改性等属性。 (2)借助流操作,向文本文件添加记录并显示其记录内容。 实验要求 (1)文件名通过命令行以参数方式输入。程序需要判断参数所提供文件的存在性。 (2)待添加的记录通过键盘输入,在屏幕上显示文件内容; 实验11 图形用户界面设计 实验目的 (1)熟悉AWT标签、文本框、文本行、按钮等组件的使用方法。 (2)熟悉事件处理方法。实验内容 (1)设计一个简易计算器,如图1所示。在“操作数”标签右侧的两个文本行输入操作数,当单击“+,一,X,”按钮时,对两个操作数进行运算并将结果填入到“结果”标签右侧的文本行中。 (2)编写文本移动程序,窗口如图2所示。窗口中有2个文本区和2个按钮,文本区分 别位于窗口的左边和右边区域,2个按钮位于窗口的中间区域,当单击“一”按钮时,将左边文本区中选中的内容添加到右边文本区的末尾。当单击“一”按钮时,将右边文本区中选中的内容添加到左边文本区的末尾。(可参考第11章课后习题7。) 提示:在文本区中,可以使用getSelectedText()方法获得通过鼠标拖动选中的文本。可以将“一”和“一”按钮放入Panel组件中,再将Panel组件加入窗口。 实验要求 (1)组件在窗口中的位置尽量按要求摆放。 (2)响应窗口的关闭操作事件。 实验12 Swing组件 实验目的 (1)熟悉Swing组件的用法。 (2)熟悉事件处理方法。 实验内容 (1)编写“背单词”程序。系统从词库中随机抽取英文单词,通过一个JLabel组件显示 对应的中文,让用户在JTextField组件中输入英文单词。如果用户输入的英文单词出错,按回车键后,系统在另一个fiabel组件显示“对不起1答错了直到用户输入正确的英文单词,按回车键后,系统显示“恭喜你答对了!”;该过程可以持续进行,直到用户终止程序 (2)编写一个简单的个人简历录入程序。可以通过文本行输入姓名,通过单选按钮选择 性别,通过组合框选择籍贯和文化程度,并在文本框中显示所填写及选择的信息。请自行安排版面,使其美观。(程序编写可参照第12章课后习题7。) 实验要求 (1)合理布局组件在窗口中的位置,使界面美观。 (2)响应窗口的关闭操作事件。 实验13 Applet程序 实验目的 (1)熟悉Applet类。 (2)掌握Applet的程序结构。 (3)学会编写启动Applet程序的HTML文档。 (4)观察Applet程序生命周期。 实验内容 (1)编写Applet程序1,显示init(),start(),stop(),paint()和destroy()方法的执行顺序和执行次数。 (2)编写Applet程序2,在屏幕上画一组同心圆,相邻两圆的直径大小相差10(pixel) (画满整个屏幕)。 (3)编写Applet程序3,在屏幕上画椭圆。椭圆的大小和位置由拖动鼠标所选中的区域 决定(按下鼠标左键确定椭圆的左上角,放开鼠标左键确定椭圆的右下角)。 实验要求 (1)编写调用Applet程序1的HTML文档1,利用appletviewer运行HTML文档1,启 动Applet程序1。改变Applet窗口大小,使其最大化、最小化,查看init(),start(),stop(),paint()和destroy()方法的执行情况。 (2)编写调用Applet程序2的HTML文档2,利用appletviewer运行HTML文档2,启 动Applet程序2。改变Applet窗口大小,观察同心圆个数的变化情况。 (3)编写调用Applet程序3的HTML文档3,利用appletviewer运行HTML文档3,启 动Applet程序3。在不同位置拖动鼠标,观察所绘制的椭圆。 实验14多线程 实验目的 (1)熟裔利用Thread类建立多线程的方法。 (2)熟悉利用Runnable接口建立多线程的方法。 实验内容阅读下列程序,分析并上机检验基功能 class DelayThread extends Thread private static Int count=0; private int no; private int delay; public DelayThread() count+; no=count; ) public void run() try for(int i=0;i10;i+) Delay=(int) (Math.random()*5000); sleep(delay); System.out.println(“Thread “+no+” with a delay “+delay); catch(InterruptedException e) public class MyThread public static void main(String args) DelayThread thread1=new DelayThread(); DelayThread thread2=new DelayThread(); Thread.start(); thread2.start(); try Thread.sleep(1000); catch(In

温馨提示

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

评论

0/150

提交评论