第一篇:java基础教学大纲改
《Java基础》教学大纲
一、课程性质与教学目的
课程性质:《Java程序设计》是计算机软件技术专业的一门职业技术课程,本课程主要讲述当前非常流行的面向对象程序设计的基本知识和编程思想,为学员建立初步的面向对象程序设计的基本知识体系结构,为以后的就业打下坚实基础。
课程目的:让学生初步掌握面向对象编程思想,初步掌握java基本语法,初步理解java编程思想,并且能够使用java将现实问题转化为数学模型,解决问题,并为未来学习java高级打下坚固的基础。
参考书目:1.《JAVA基础教程》
二、基本要求
本课程有三部分组成:理论教学52学时+实验教学24学时
学完本课程后,对于一般问题,学生应能够独立地进行相应的程序设计,并熟练地运用面向对象方法,在Java语言的环境下进行程序的编辑、调试运行,得出正确的结果。学习完本课程应该基本具备如下知识和能力: 1.掌握java基本语法
2.理解面向对象编程的基本思路和知识,能在具体实际中运用面向对象思想考虑问题; 3.能够熟练使用java的基本类库 4.能够解决一些常见的实际数学问题
三、教学内容 1.Java语言概述
1)了解Java语言的历史与现状。
2)掌握Java虚拟机的概念。
2.Java编程基础
1)掌握标识符的定义规则。
2)掌握表达式的概念、组成。
3)掌握数据类型的划分,简单数据类型的概念。
4)掌握布尔型常量、字符型常量、整型常量、浮点型常量、字符串常量。
5)掌握变量的概念、声明、有效范围、赋值、类型转换。
6)掌握算术运算符、关系运算符、逻辑运算符、赋值运算符、条件运算符、运算符的优先级和结合性。
7)掌握注释语句的作用,//和/* */的使用。3.Java的控制结构
1)掌握条件语句if(if-else-if)、多分支语句switch的结构和程序流程,编写相应的程序;了解分支语句的嵌套。
2)掌握while语句、for语句的结构和程序流程,编写相应的程序;了解do-while语句,循环的嵌套。
3)了解continue语句、break语句的用法。4.方法
掌握方法的定义及使用 5.数组合字符串
1)掌握一维数组的概念、定义,静态数组初始化,数组元素的引用。
2)掌握String和StringBuffer类的使用。6.面向对象编程
1)掌握类声明,类体(变量和方法)的定义,构造函数的概念和定义。
2)掌握对象的生成,变量和方法的引用,方法参数的传递,构造函数的引用。7.类的封装、继承和多态
掌握继承关系的定义,成员变量的继承和隐藏,方法的继承、重载和覆盖;了解this和super。8.接口和基本类库
1)掌握接口的基本概念,接口的实现。
2)了解常用的Java类库 9.异常处理
1)了解编译错误、运行错误。
2)掌握异常处理机制概念。
3)掌握try-catch结构;了解finally。
四、学时分配
章次 1 2 3 4 6 7 8 9 章名 Java语言概述 Java语言基础 类与对象 继承 多态 抽象类和接口
异常 常用类库 总计
五、实验(上机)
一)、Java实验一:JDK开发工具 1.实验目的
1)熟悉JDK开发环境。2.实验要求
1)JDK开发环境 3.项目及学时分配:2学时
4.实验考核:100分(JDK环境熟练程度100分)二)、Java实验二:Java语言基础 1.实验目的
1)掌握标识符的定义规则。
2)掌握表达式的组成。
3)掌握各种数据类型及其使用方法,熟悉自动转换与强制转换的含义。
4)理解定义变量的作用,掌握定义变量的方法。
5)掌握各种运算符的使用及其优先级控制。2.实验要求
1)掌握变量定义与数据类型。
2)掌握算术运算。
3)掌握关系运算与逻辑运算 3.项目及学时分配:2学时
4.实验考核:100分(正确用数据类型定义变量30分、能熟练使用关系运算符和逻辑运算符70分)三)、java实验三:控制结构 1.实验目的
1)掌握if语句、if-else-if结构的使用。
学时分配
合计 4 16 16 8 8 8 8 8 76
讲授 4 14 14 4 4 6 6 6 54
实验 0 2 2 4 4 2 4 2 22
上机
实践
习题
考核
机动
2)掌握switch语句的使用。
3)掌握使用while语句实现循环。
4)了解使用do-while语句实现循环。
5)掌握使用for语句实现循环。
6)了解continue语句和break语句的使用。2.实验要求
1)使用简单if语句编程,从键盘键入三个整数,然后按照从小到大的顺序将其输出。
2)分别使用if-else-if语句和switch语句编程,确定某一月在哪个季节。
3)分别使用while、do-while和for语句编程,求1~100的和。
4)使用continue语句实现:将100~300之间的不能被3整除的数输出。
5)使用break语句实现记数:从1~100,当数到78时程序终止。3.项目及学时分配:2学时
4.实验考核:正确使用控制结构,程序运行正确无错误。四)、Java实验四:方法 1.实验目的
1)掌握方法的概念和创建。
2)掌握方法的参数传递。2.实验要求
1)利用递归算法实现汉诺塔问题的求解。
2)编辑程序要求参数a、b、c由键盘输入。即先打印“本程序求方程AX^2+BX+C=0的根!”,然后依次提示“请输入参数A:”、“请输入参数B:”、“请输入参数C:”,最后计算结果。
3)编写一个方法用于计算n个数中取m个的组合数,并用该方法输出杨辉三角。3.项目及学时分配:2学时 4.实验考核:100分(每题50分)五)、Java实验五:数组 1.实验目的
掌握一维数组的概念、定义和使用。2.实验要求
1)编写一个程序,通过屏幕提示输入二维数组的行列个数(假设是方阵),然后提示依次输入各个整数元素(一个元素一行,参考课件示例SelectSort.java),然后编写三个方法分别求数组的每行最大值、每列最小值以及将数组主对角线元素成绩;
2)编程实现Fibonacci数列;
3)编程采用冒泡法实现对数组元素由小到大排序。3.项目及学时分配:2学时
4.实验考核:100分(正确解决所给题目)六)、Java实验六:类和对象的创建和使用 1.实验目的
1)掌握类的声明。
2)掌握对象的创建。
3)掌握方法的定义和调用。
4)掌握构造函数的使用。2.实验要求
1)创建5个学生对象给一个学生数组赋值,每个学生属性有:学号、姓名、年龄。
(1)将学生按学号排序输出;
(2)给所有学生年龄加1;
(3)统计大于20岁的学生人数。
2)编程创建一个Point类,在其中定义两个变量表示一个点的坐标值,再定义构造函数初始化为坐标原点,然后定义一个方法实现点的移动,再定义一个方法打印当前点的坐标。并创建一个对象验证。
3)定义一个类实现银行帐户的概念,包括的变量有“帐号”和“存款余额”,包括的方法有“存款”、“取款”和“查询余额”。定义主类,创建帐户类的对象,并完成相应操作。3.项目及学时分配:2学时
4.实验考核:100分(题目1 20分、题目2 40分、题目3 40分)七)、Java实验七:类的封装 1.实验目的
1)掌握类的继承方法。
2)掌握变量的继承和覆盖。
3)掌握方法的继承、重载和覆盖。2.实验要求
1)制作一个类person,有三个字符串变量肤色、发色、姓名(变量名自己定义),有两个方法吃和住(方法名自己定义),自己决定如何封装;
2)借助上面的people类,再编写两个子类中国人、欧洲人,分别增加一个变量:语言,以及一个方法tostring用于输出对象信息。3.项目及学时分配:2学时
4.实验考核:100分(题目1 40分、题目2 60分)八)、Java实验八:接口和基本类库 1.实验目的
1)掌握接口的实现方法。
2)掌握常用类库的基本使用方法。2.实验要求
1)制作一个接口animal,有三个方法吃、睡和外部特征(方法名自己定义);
2)编写两个类人、老虎,分别实现animal接口。3.项目及学时分配:4学时
4.实验考核:100分(能正确定义及使用接口和常用类)九)、Java实验九:异常处理 1.实验目的
掌握异常的概念以及如何定义、抛出和捕捉处理异常。2.实验要求
1)理解异常的抛出、捕捉与处理。
2)理解异常类的常用方法的使用。3.项目及学时分配:2学时
4.实验考核:100分(能否捕捉异常 50分、能否正确使用异常类方法 50分)3.项目及学时分配:2学时
实验项目及课时分配
章 次 实验一 实验二 章 名
学时分配
实验项目
JDK开发工具 Java语言基础 2
学时分配
备注 实验三 实验四 实验五 实验六 实验七 实验八 实验九
控制结构 方法 数组与字符串 类和对象的创建和使用 类的封装 接口和基本类库 异常处理 总计 2 4 4 2 4 2 24
六、考核考试方式
平时成绩30%,期末成绩70%。一共9个实验,总分900分,9个实验总分除以900分乘以30分,为平时分。期末最终实验考核占比20%,java基础理论居多,所以期末笔试考核占比50%。
第二篇:java教学大纲
《Jav程序设计》教学大纲
一、课程性质与教学目的
课程性质:《Java程序设计》是计算机软件技术专业的一门职业技术课程,本课程主要讲述当前非常流行的面向对象程序设计的基本知识和编程思想,为学员建立初步的面向对象程序设计的基本知识体系结构,为以后的就业打下坚实基础。
课程目的:让学生真正掌握面向对象程序设计技术,使用 awt和Swing包开发图形用户界面和事件驱动的程序,并能从事JAVA Applet小应用程序及网络通信等程序的开发。理解Java多线程概念,并可以利用多线程技术开发相应程序。能够以面向对象的角度思考和设计小型应用程序。初步具备一个优秀的软件开发人员所应有的基本能力。
参考书目:1.《JAVA语言基础教程》刘其成等编石油大学出版社
2.《JAVA语言及应用》张为民 等编 清华大学出版社
二、基本要求
本课程有三部分组成:理论教学50学时+实验教学50学时+项目实战240学时。
学完本课程后,对于一般问题,学生应能够独立地进行相应的程序设计,并熟练地运用面向对象方法,在Java语言的环境下进行程序的编辑、调试运行,得出正确的结果。学习完本课程应该基本具备如下知识和能力:
1.利用Java支持的多种布局管理开发图形用户界面(GUI),并使用Java语言的事件委托机制开发GUI应用程序;
2.掌握面向对象编程的基本思路和知识,能在具体实际中运用面向对象思想考虑问题; 3.掌握Java的多线程机制;
4.初步掌握JDBC-API的基本知识,并能够开发有一定规模的数据库管理系统; 5.掌握了初步的Java网络编程技术,能利用Sockets机制进行网络通信软件的开发; 6.理解并掌握Applet的原理,能够开发简单的Applet程序; 7.掌握Java的异常处理机制,能开发容错性良好的程序; 8.掌握初步的JSP知识,能够编写简单的JSP应用程序;
9.了解设计模式的基本知识,能够在程序设计中引用简单的设计模式。10.小型软件设计开发能力。
三、教学内容 1.Java语言概述
1)了解Java语言的历史与现状。
2)掌握Java虚拟机的概念。
3)掌握Java语言的安全性、跨平台性特点;了解Java Applet和Java类库。
4)了解常见的Java开发工具。
5)掌握Java Application程序结构、开发过程,了解Java Applet结构。2.Java编程基础
1)掌握标识符的定义规则。
2)掌握表达式的概念、组成。
3)掌握数据类型的划分,简单数据类型的概念。
4)掌握布尔型常量、字符型常量、整型常量、浮点型常量、字符串常量。
5)掌握变量的概念、声明、有效范围、赋值、类型转换。
6)掌握算术运算符、关系运算符、逻辑运算符、赋值运算符、条件运算符、运算符的优先级和结合性。
7)掌握注释语句的作用,//和/* */的使用。3.Java的控制结构
1)掌握条件语句if(if-else-if)、多分支语句switch的结构和程序流程,编写相应的程序;了解分支语句的嵌套。
2)掌握while语句、for语句的结构和程序流程,编写相应的程序;了解do-while语句,循环的嵌套。
3)了解continue语句、break语句的用法。4.方法
掌握方法的定义及使用 5.数组合字符串
1)掌握一维数组的概念、定义,静态数组初始化,数组元素的引用。
2)掌握String和StringBuffer类的使用。6.面向对象编程
1)掌握类声明,类体(变量和方法)的定义,构造函数的概念和定义。
2)掌握对象的生成,变量和方法的引用,方法参数的传递,构造函数的引用。7.类的封装、继承和多态
掌握继承关系的定义,成员变量的继承和隐藏,方法的继承、重载和覆盖;了解this和super。8.接口和基本类库
1)掌握接口的基本概念,接口的实现。
2)了解常用的Java类库 9.异常处理
1)了解编译错误、运行错误。
2)掌握异常处理机制概念。
3)掌握try-catch结构;了解finally。10.图形用户界面
1)掌握窗口的创建。
2)掌握绘制图形、显示文字、控制颜色、显示图像的方法。
3)掌握常用组件及其事件处理(Label、Button、Checkbox、CheckboxGroup、TextField/TextArea、Choice、List、Frame)以及FlowLayout、BorderLayout、GridLayout以及NULL布局。11.多线程机制
1)了解基本概念(程序、进程、线程)。
2)了解实现多线程的两种方法:创建Thread类的子类和实现Runnable接口。
3)线程的同步和互斥。12.输入/输出处理
1)了解流的概念,输入/输出流层次。
2)了解文件与目录管理,文件的顺序处理和随机访问。13.Applet
1)了解HTML文件作用与结构。
2)掌握Applet基本工作原理。
3)掌握Applet程序结构与开发过程,Applet的创建,生命周期与绘图周期,与HTML文件协同工作及参数传递。
4)了解Applet和浏览器之间的通信。
5)掌握Applet 中的标准组件、图形/文本/颜色控制、图像显示、声音播放。14.JDBC技术
了解并掌握如何使用Java语言编程实现对数据库的管理(建表、插入记录、条件查询等)。15.网络编程
了解并掌握初步的Java网络程序设计。
四、学时分配 章次 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
五、项目实战 章名 Java语言概述 Java语言基础 Java控制结构
方法 数组与字符串 面向对象程序设计 类的封装继承多态 接口与基本类库 异常处理 GUI设计 多线程机制 输入/输出处理 Applet基础 JDBC技术 网络编程 总计
学时分配
合计 4 4 4 4 8 8 4 8 4 12 8 4 8 12 8 100
讲授 2 2 2 2 4 4 2 4 2 6 4 2 4 6 4 50
实验 2 2 2 2 4 4 2 4 2 6 4 2 4 6 4 50
上机
实践
习题
考核
机动
八周的项目实战,主要的目的就是培养学生简单Java项目的开发能力。使其对小型的Java项目开发流程,开发方法和工具有一个实际的了解。通过小项目的设计开发进一步巩固所学的基础知识。在作为实战教材的《Java高级开发指南与项目实战》中,我们增加了Swing技术、设计模式、UML、集合类和Java编程规范的内容,并通过一个简单的数据库管理系统介绍了Java项目开发的基本过程。
具体项目实战的安排如下:
Java项目实践为期八周,每人一题,每个题目只给出总体要求,相关资料和知识由学员自己搜集整理学习。每周5天,每天6学时(上午4学时,下午2学时),共计240学时。具体安排如下:
序号 1 2 3 4 5 6 7 8 总计
六、实验(上机)
一)、Java实验一:JDK开发工具 1.实验目的
1)熟悉JDK开发环境。
2)熟悉Jcreator编辑器的使用。
3)掌握Java Application的程序结构和开发过程。
4)了解Java Applet的功能与程序结构。
内容
动员,开题并完成开题报告 调研,查找资料,并完成需求规格说明书
概要设计,并完成概要设计说明书 详细设计,并完成详细设计说明书
程序实现,编码阶段
系统测试,并设计测试用例及测试报告 项目扫尾工作,并完成项目总结报告
项目验收
学时 6 24 30 30 60 30 30 30 240 2.实验要求
1)JDK开发环境
2)Jcreator编辑器
3)掌握Java Application程序开发过程
4)了解下面的Java Applet的程序结构和开发过程。3.项目及学时分配:2学时
4.实验考核:100分(JDK环境熟练程度50分、Application与Applet程序运行50分)二)、Java实验二:Java语言基础 1.实验目的
1)掌握标识符的定义规则。
2)掌握表达式的组成。
3)掌握各种数据类型及其使用方法,熟悉自动转换与强制转换的含义。
4)理解定义变量的作用,掌握定义变量的方法。
5)掌握各种运算符的使用及其优先级控制。2.实验要求
1)掌握变量定义与数据类型。
2)掌握算术运算。
3)掌握关系运算与逻辑运算 3.项目及学时分配:2学时
4.实验考核:100分(正确用数据类型定义变量30分、能熟练使用关系运算符和逻辑运算符70分)三)、java实验三:控制结构 1.实验目的
1)掌握if语句、if-else-if结构的使用。
2)掌握switch语句的使用。
3)掌握使用while语句实现循环。
4)了解使用do-while语句实现循环。
5)掌握使用for语句实现循环。
6)了解continue语句和break语句的使用。2.实验要求
1)使用简单if语句编程,从键盘键入三个整数,然后按照从小到大的顺序将其输出。
2)分别使用if-else-if语句和switch语句编程,确定某一月在哪个季节。
3)分别使用while、do-while和for语句编程,求1~100的和。
4)使用continue语句实现:将100~300之间的不能被3整除的数输出。
5)使用break语句实现记数:从1~100,当数到78时程序终止。3.项目及学时分配:2学时
4.实验考核:正确使用控制结构,程序运行正确无错误。四)、Java实验四:方法 1.实验目的
1)掌握方法的概念和创建。
2)掌握方法的参数传递。2.实验要求
1)利用递归算法实现汉诺塔问题的求解。
2)编辑程序要求参数a、b、c由键盘输入。即先打印“本程序求方程AX^2+BX+C=0的根!”,然后依次提示“请输入参数A:”、“请输入参数B:”、“请输入参数C:”,最后计算结果。
3)编写一个方法用于计算n个数中取m个的组合数,并用该方法输出杨辉三角。3.项目及学时分配:2学时 4.实验考核:100分(每题50分)五)、Java实验五:数组 1.实验目的
掌握一维数组的概念、定义和使用。2.实验要求
1)编写一个程序,通过屏幕提示输入二维数组的行列个数(假设是方阵),然后提示依次输入各个整数元素(一个元素一行,参考课件示例SelectSort.java),然后编写三个方法分别求数组的每行最大值、每列最小值以及将数组主对角线元素成绩;
2)编程实现Fibonacci数列;
3)编程采用冒泡法实现对数组元素由小到大排序。3.项目及学时分配:2学时
4.实验考核:100分(正确解决所给题目)六)、Java实验六:类和对象的创建和使用 1.实验目的
1)掌握类的声明。
2)掌握对象的创建。
3)掌握方法的定义和调用。
4)掌握构造函数的使用。2.实验要求
1)创建5个学生对象给一个学生数组赋值,每个学生属性有:学号、姓名、年龄。
(1)将学生按学号排序输出;
(2)给所有学生年龄加1;
(3)统计大于20岁的学生人数。
2)编程创建一个Point类,在其中定义两个变量表示一个点的坐标值,再定义构造函数初始化为坐标原点,然后定义一个方法实现点的移动,再定义一个方法打印当前点的坐标。并创建一个对象验证。
3)定义一个类实现银行帐户的概念,包括的变量有“帐号”和“存款余额”,包括的方法有“存款”、“取款”和“查询余额”。定义主类,创建帐户类的对象,并完成相应操作。3.项目及学时分配:2学时
4.实验考核:100分(题目1 20分、题目2 40分、题目3 40分)七)、Java实验七:类的封装 1.实验目的
1)掌握类的继承方法。
2)掌握变量的继承和覆盖。
3)掌握方法的继承、重载和覆盖。2.实验要求
1)制作一个类person,有三个字符串变量肤色、发色、姓名(变量名自己定义),有两个方法吃和住(方法名自己定义),自己决定如何封装;
2)借助上面的people类,再编写两个子类中国人、欧洲人,分别增加一个变量:语言,以及一个方法tostring用于输出对象信息。3.项目及学时分配:2学时
4.实验考核:100分(题目1 40分、题目2 60分)八)、Java实验八:接口和基本类库 1.实验目的
1)掌握接口的实现方法。
2)掌握常用类库的基本使用方法。2.实验要求
1)制作一个接口animal,有三个方法吃、睡和外部特征(方法名自己定义);
2)编写两个类人、老虎,分别实现animal接口。3.项目及学时分配:4学时
4.实验考核:100分(能正确定义及使用接口和常用类)九)、Java实验九:异常处理 1.实验目的
掌握异常的概念以及如何定义、抛出和捕捉处理异常。2.实验要求
1)理解异常的抛出、捕捉与处理。
2)理解异常类的常用方法的使用。3.项目及学时分配:2学时
4.实验考核:100分(能否捕捉异常 50分、能否正确使用异常类方法 50分)十)、Java实验十:Java绘图 1.实验目的
1)掌握简单窗口的创建。
2)掌握绘制图形、控制字体和颜色、显示图像的方法。2.实验要求
1)建立一个最简单的空白窗体。
2)编辑一个小程序,显示一个半径为150的圆内接五角星(要求正放,不可以偏),要求圆为黄色填充,五角星为红色,背景为蓝色,在图片的正下方显示文字“圆内接五角星”,字体为楷体12号,白色,在下方画一个边框为5,长300,高180的红色矩形。
3)编程显示图像文件。3.项目及学时分配:2学时
4.实验考核:100分(题目1 20分、题目2 60分、题目3 20分)十一)、Java实验十一:GUI标准组件及事件处理 1.实验目的
掌握常用GUI控制组件及其事件处理。2.实验要求
1)在应用程序窗体中安排1个文本框,一个标签。在文本框输入一个数字(0-9),按回车键,在标签处显示对应的英文单词。0---zero,1---one,.....。
2)编辑一个小程序,界面上加入一个标签,显示内容为你的姓名和班级,并注明是X月XX日作业,在标签下面增加列表、两个单选框(控制列表是否为多选状态),一个文本框,三个按钮,分别控制将文本框的内容加入列表、删除、删除全部列表内容,当选择列表时,按照当前状态(是否多选),在文本框中显示用户选择的列表内容。再加入一个文本区,用来显示用户操作的过程,比如:您输入了文字XXX,您单击了加入按钮等。
3)实现一个简单的图像浏览器,部署“上一张”、“下一张”两个按钮,点击按钮可前后翻阅图片。
4)仿照记事本的GUI编写一个JAVA简易记事本程序。只要菜单及界面,具体功能除[退出]外均不用实现。
十二)、Java实验十二:多线程机制 1.实验目的
1)线程的概念、线程的生命周期。
2)多线程的编程:继承Thread类与使用Runnable接口。
3)使用多线程机制实现动画。2.实验要求
1)理解用创建Thread子类的方法实现多线程。
2)理解用实现Runnable接口的方法实现多线程。
3)利用多线程编程实现一个正在旋转的地球。3.项目及学时分配:4学时
4.实验考核:100分(能否对THREAD子类正确使用 20分、题目完成 80分)十三)、Java实验十三:输入输出流 1.实验目的
1)了解流式输入输出的基本原理。
2)掌握类File、FileInputStream、FileOutputStream、RandomAccessFile的使用方法。2.实验要求
1)编写一个程序实现任意文件的拷贝功能,源文件和目的文件名由命令行参数提供。
2)设计一个图形界面的文本文件查阅工具,在窗体中安排一个文本域和一个按钮,文本域用来显示文件的内容,点击打开按钮将弹出文件选择对话框,从而可以选择要查看的文件。3.项目及学时分配:2学时
4.实验考核:100分(题目1 40分、题目2 60分)十四)、Java实验十四:Applet 1.实验目的
1)掌握Java Applet程序结构和开发过程
2)了解Applet运行机制
3)学会编写Applet对应的HTML文件,掌握从HTML文件向Applet传递参数的方法。
4)了解Applet与浏览器的通信。
5)掌握在Applet图形界面设计。2.实验要求
1)Java Applet程序开发过程
2)制作一个Applet,要求传入四个参数,分别表示操作数类型(如整数、浮点数等)、两个操作数以及一个操作符。Applet接收到参数后,按照参数类型和操作符计算两个操作数的值。
3)编写Applet,显示heep://www.xiexiebang.com的页面内容。
4)编写Applet,包含一个文本框和一个按钮,单击按钮时,在浏览器的状态行显示文本框中的内容。
5)编写Applet播放两段音乐,一段是连续播放的背景音乐,一段是独立的整段音乐。3.项目及学时分配:4学时
4.实验考核:100分(题目2 30分、题目3 20分、题目4 30分、题目520分)十五)、Java实验十五:JDBC技术 1.实验目的
1)了解JDBC的概念和工作原理。
2)掌握使用JDBC实现简单的数据库管理。2.实验内容
1)配置ODBC数据源。
2)建立一张表book,字段有:id int(4)bname string(20)bauthor string(10)bvalue float
3)编辑一个程序,对该表进行记录插入,程序运行后,如果表中没有数据,则显示:表中没有记录!是否添加(Y/N)?,如果选择Y则分别要求输入各字段,输入完毕后,更新表,并显示所有记录,继续询问是否添加,直到用户输入N后退出系统。
4)编写程序,在“book”表中分别查询所有记录以及满足条件“ bvalue>10”的记录。
5)设计删除记录模块。3.项目及学时分配:6学时
4.实验考核:100分(题目1 10分、题目2 20分、题目3 20分、题目4 50分)十六)、Java实验十六:网络编程 1.实验目的
1)了解并掌握Socket的概念和工作原理。
2)掌握使用Socket实现简单的网络程序的设计。2.实验内容
1)制作一个相互控制的applet程序,要求applet1也可以将文本框中的内容写到applet2中,但不要按钮,要求输入内容后回车写入applet2。
2)设计一个两个客户通讯的程序。3.项目及学时分配:4学时
4.实验考核:100分(题目1 40分、题目2 60分)
实验项目及课时分配
章 次 实验一 实验二 实验三 实验四 实验五 实验六 实验七 实验八 实验九 实验十 实验十一 实验十二 实验十三 实验十四 实验十五 实验十六 章 名
学时分配
实验项目
JDK开发工具 Java语言基础 控制结构 方法 数组与字符串
类和对象的创建和使用 类的封装 接口和基本类库 异常处理 Java绘图
GUI标准组件及事件处理 多线程机制 输入输出流 Applet JDBC技术 网络编程 总计
七、课程的重点、难点和深广度
1、重点
1)Java语言基础
2)面向对象构件
3)Applet基础
4)多线程
5)JDBC技术
2、难点 2 2 2 4 4 2 4 2 2 4 4 2 4 6 4 50
学时分配
备注
1)面向对象编程思想
2)多线程机制
3)输入/输出处理
4)JDBC技术
3、深广度
1)网络应用
2)JDBC技术
八、说明与建议
1.该课程实践性较强,需要学员多作练习
2.主持教师需要有比较熟练的编程经验,对JDK1.X比较熟悉
3.针对所留习题,可以组织两到三次讨论,以便学员掌握面向对象编程的基本思
第三篇:JAVA基础总结
JAVA基础总结
转眼间,已经来到这里学习半年了,而现在我们对于JAVA学习才算是真正的开始。一开始接触的时候我发现这个和C语言的基本语法几乎一模一样的,老师说:JAVA语言本来就是C++语言发展过来的,而C++是从C语言发展来的,C C++ 还有JAVA虽然是不同的三种语言,但是其实他们的基本语法是一样的,但是它们却有巨大的区别,这个区别主要是体现在思想上。
都说C语言是面向过程的语言,C++ C#和JAVA是面向对象的编程,其实就是思维方式稍微改了一下子,面向过程的语言主要是着重于算法,面向对象着重于逻辑而已。
这个教我们的老师是张成峰老师,张成峰是个很负责的老师,虽然JAVA基础其实和C语言基础差不多,但是仔细学学还是能找出很多不同的细节的,于是大家的问题就很多,张老师几乎就是手把手的教我们,所以整体来说JAVA基础学得挺扎实的。
我在这本书的学习不是挺好,联系得少了,所以对代码也不是特别熟悉。而且JAVA是一门重概念的书,对于我来说,概念是我的要害,理论知识也是我最怕学习的,所以学习这本书对我来说很是艰难,听了很久的课,代码写得出来,但是理论知识几乎一点也不明白,结果就造成了这次笔试考的不好。
笔试考的不好,机试也因为我的粗心没有考好,所以这次的成绩不好。
学习JAVA基础后,还要在学习的过程中对每个知识都要用心和细心,当然最该注重的地方就是应该提高我对理论知识的学习,要多看书,也要多敲敲代码,这些就是提高学习知识全面的方法。
下一本书学习的是JAVAOO算是JAVA的一个重要的内容了,这才会真正的接触JAVA的核心课程,在这本书里我要好好的理解理论知识,仔细的学习每个知识。
第四篇:Java基础总结
基本数据类型
变量单元直接存放数据
赋值和传参的方式:传值,即传递副本
比较相等使用关系运算符“==”
引用数据类型
变量单元存放引用即对象地址,而数据(对象)在另一内存区域存放。
赋值和传参的方式:传引用(传递对象的地址),即传递对象本身。
使用关系运算符“==”比较两个引用类型变量,比较的是地址,如果比较结果为
真,说明两个变量引用了同一对象。
比较两个对象是否相等应使用equals方法
Java是面向对象的语言,开发Java程序就是开发Java类,Java的变量定义、方法(函
数)和语句都必须在类中书写,“无类即无Java”。
类的实例成员
属性(成员变量):直接定义在类体中的变量(注:在方法或语句块中定义的变量不是属性)
方法:直接定义在类体中的方法。
类成员:直接定义在类体中的内部类,即类成员。
注:对象的成员是从属于对象的,必须通过对象访问,在Java中不存在脱离对象和类而独立存在的属性和方法。
类、方法、语句三者的关系:
类中包含方法,方法中包含语句;方法中不能嵌套方法;语句不能直接写在类体中。
变量的作用域
局部变量-方法的参数、方法体中定义的变量、语句块中定义的变量,仅在所定义的方法体或语句块中有效。
属性-在整个类体中有效。
公有的属性-其它类可以本类对象访问。
私有的属性-仅限本类内访问
局部变量(无论基本类型还是引用类型)在栈内存中,对象在堆内存中。注:引用类型的局部变量内存放是对象的引用(即地址),而对象在堆内存中。
方法的重载-在同一类中多个方法同名的语法现象,方法重载应符合以下条件:
方法同名
参数有所不同(即类型、个数和顺序三者至少有一个不同)
注:方法是否重载不考虑返回类型等其它方面。
包和访问修饰符
包-类的目录结构,主要用途是方便类的管理。
类的简称:不含包名的类名
类的全限定名称(类的全称):带包名的类名。
访问修饰符
private-仅限本类内访问
public-任何类都能够访问
默认-限本包的类访问
protected--限本包的类访问和子类的访问
类的成员(属性、方法和成员内部类)可以使用四种访问修饰符,顶级外部类仅能
使用public和默认两种修饰符。
数组
基本类型的数组的元素放的是数据
对象数据的元素放的是对象的引用
二维数组实际上是一个维数组,而其每个元素又是一个一维数组。
构造方法-与类名同名并且无返回类型的方法
构造方法的作用是创建对象,仅能通过new关键字调用。
类中未显式定义构造方法时,类中会有默认的构造方法(即一个public、无参的构
造方法);类中一旦定义显式定义构造方法,将不再产生默认的构造方法。
构造方法可以重载
构造方法只能可以使用四个访问修饰符,不可以使用其它修饰符(如static、final
等)。
this关键字
this表示本对象或对象自身的引用
通过this可以调用本类的成员方法和属性
通过this可以调用本类的构造方法,this调用构造方法的语句必须写在构造方法的第一句。
实例成员和静态成员
类的成员(属性、方法和成员类)可划分为静态成员和实例成员。
实例成员是属于对象的,随着对象的创建而存在,随着对象的销毁而销毁。 静态成员是属于类的,随着类的加载而存在,随着类的销毁而销毁。
使用static修饰的成员是静态成员,未使用static修饰的成员是实例成员。 静态成员内不能使用this关键字。
this表示当前对象的引用。
对象的初始化
第一:实例属性赋默认值
第二:实例属性赋初值
第三:执行对象初始化块
第四:执行构造方法
类的初始化
第一:静态属性赋默认值
第二:静态属性赋初值
第三:执行静态块
继承的基本概念
Java仅支持单继承
如果一个类没有显式继承任何类,则隐式继承java.lang.Object类 子类拥有父类的一切,子类对象由两部分构成:父类对象部分和子类个性化的部分。 子类并不能访问父类的一切: 子类可以访问父类的public成员和protected成员 子类不可以访问父类的private成员 仅当子类与父类同在一包时,子类方可以访问父类的默认访问控制的成员。继承与类和对象的初始化 构造子类对象时,首先构造父类对象,其次构造子类个性化部分,两者共同构成完整的子类对象,即首先进行父类对象的初始化,在初始化子类对象(个性化)部分。 子类构造方法的执行首先调用父类的构造方法。 若在子类构造方法中无显式调用父类构造方法的语句,则系统默认调用父类中可访问的无参的构造方法,如果这时候父类中恰好没有这样的构造方法,则编译出错。 在子类的构造方法中可以通过super关键字调用父类构造方法。这样的调用语句只能出现在子类构造方法的第一句。 关于初始化的顺序 初始化父类 初始化子类 初始化父类对象 初始化子类对象 继承与类型转换 子类型对象可以自动转型为父类型 父类型引用某个子类型对象时,可以强制转化为这个具体的子类型 方法重写 在继承的情况下,子类的实例方法与父类的实例方法的方法名称、参数、返回类型、throws声明完全一致,并且该子类方法的访问权限不低于父类方法的访问权限,即方法重写(子类方法重写了父类方法),也称方法覆盖。 方法重写仅存在于父子类中的实例方法,静态方法没有重写的概念。 当通过子类型对象执行重写方法时,将始终表现为子类的行为,而且无论引用对象的变量是父类型还是子类型,也无论是直接调用还是通过父类型其它方法间接调用,都将如此。 final修饰的方法不可以被重写 final修饰的类不可以被继承 隐藏成员变量 如果子类和父类中定义了同名称的成员变量,则称子类隐藏了父类的成员变量 通过父类方法访问隐藏的成员变量时,将获得父类成员变量 通过子类方法访问隐藏的成员变量时,将获得子类成员变量 通过父类型的引用直接访问隐藏的成员变量时,将获得父类成员变量 通过子类型的引用直接访问隐藏的成员变量时,将获得子类成员变量 super关键字
super仅能用于子类中表示本对象的父对象部分
super可以调用父类型的构造方法
Super可以调用父类的成员
Super不可以使用在静态上下文中
Super不可以做为参数传递,不可以做为返回值返回。
当方法重写时,或父类成员变量被隐藏时,子类中只能通过super访问父类方法和
父类成员变量
final关键字
用于变量,表示变量的值不可改变
用于类,表示类不可被继承
用于方法,表示方法不可以被重写
关于final变量的初始化时机
局部变量:声明的时候初始化
实例成员变量:声明、对象初始化块和构造方法三处之一
静态成员变量:声明、静态块两处之一
抽象类
抽象类可以包含抽象方法,也可以不包含抽象方法
含有抽象方法的类必须定义为抽象类
抽象类有构造方法
抽象类不能够实例化
通过抽象类可以调用其静态成员
抽象类是需要由子类继承的,因此抽象类不允许是final类
抽象方法
抽象方法没有方法体,包括一对空的大括号也不允许有
抽象方法必须是实例方法,抽象方法不允许是final的 抽象类与继承
抽象类可以被继承
若抽象类的子类是非抽象类,则该子类必须实现(重写)其父类的所有抽象方法 若抽象类的子类也是抽象类,则该子类可以不实现(重写)其父类的全部或部分抽象
方法。
接口
接口也是数据类型,可以将其理解为“纯”抽象类
接口不是类,也没有构造方法,不能够实例化
接口中的属性一律是public、static、final的,并可以省略这三个关键字
接口的方法一律是public、abstract的,并且可以省略这两个关键字
接口中可以不包含任何属性和方法
接口与实现
接口不是类,因此接口与类的关系不是“继承”关系,而是“实现”关系,我们可
以将实现理解为继承(尽管这并不恰当)
如果接口的实现类是抽象类,则该实现类可以不实现接口的全部或部分方法 如果接口的实现类是非抽象类,则该实现类必须实现接口的全部方法
一个类可以实现多个接口
接口与继承
接口之间可以相互继承
一个接口可以继承多个接口
接口与类型转换
接口的的子类型对象可以自动向上转型为接口类型
接口的子类型指:是接口的实现类或者接口的子接口
如果变量引用的对象实际是某个接口的实现类对象,而变量的类型不是这个接口的子类型,那么则可以强制转换为这个接口类型。
异常的类层次结构
Throwable错误类,表示不可恢复的致命错误
Exception运行时异常,此类异常可以不做显式处理
非运行时异常catch
声明抛出 在方法头通过throws声明可能抛出的异常类型
异常机制的五个关键字
try catch finally throw throws
如何使用
try-catch
try-catch-finally注:只要try执行,其对应的finally块才必然执行
try-finally注:只要try执行,其对应的finally块才必然执行
throw 主动抛出一个异常
throws 用在方法声明头部,声明方法可能抛出异常
finally代码块多用于书写资源回收代码
Java集合类(集合框架)
Collection接口
List接口 允许重复元素,元素有索引序号,并按放入元素的次序编号
ArrayList 线性表结构,查找快,增删慢
LinkedList 链表结构,查找慢,增删快
Vector 同步,查找、增删性能都不高。
Set接口 不允许重复元素,元素无索引编号
HashSet 元素散列存放
TreeSet元素按自然顺序排序(即从小到大排序)
Map接口
HashMap
允许null值和null键
不同步
Hashtable <--Properties
不允许null值和null键
同步
内部类
第五篇:java基础习题
九、习题与实践(1)
1、编写程序创建并显示一个标题为“My Frame”、背景为红色的Frame。
2、编写一个程序,其功能为:在窗口上摆放两个标签。构造第一个标签时,令其上面的文本信息为“我将参加Java程序设计考试。”,将第二个标签构造为空标签。程序将第一个标签的信息复制到第二个标签上,并增加信息“希望自己考取好成绩。”。要求第一个标签以红色为背景,绿色为前景;第二个标签以绿色为背景,蓝色为前景。
3.请编写一个窗口程序,实现如下功能:定义一个用于给出提示信息的标签和两个文本框,其中,一个文本框用于获取用户给出的一个整数,求该数的平方后将计算结果置在另一个文本框中输出。
4.请编写一个窗口程序,实现如下功能:定义三个文本框。其中,第一个文本框上面的文本信息为“请输入口令:”;第二个文本框为口令输入域;第三个文本框上的信息由程序设置:若口令(假设口令为字符串”MyKey”)正确,则设置为“通过!”,否则设置为“口令错!”。
5.编写一个窗口程序, 其中包含两个按钮b1、b2,初始时b1的前景为兰色,b2的前景为红色,它们的标签分别为”兰按钮”、”红按钮”。当点击b1时,通过paint()方法在坐标(100,100)处画一个兰色的椭圆框,椭圆的长半轴为30,短半轴为20;点击b2时,在坐标(100,100)处,画一个红色的圆框,圆的半径为50。无论那个按钮被点击,都将该按钮上的标记改为“已按过”,并使该按钮变灰。
6.编写窗口程序, 其中包含两个按钮,初始时两个按钮的前景均为绿色。当点击一个按钮时,通过paint()方法在坐标(0,0)处显示一幅图象,图象名称为a.gif,显示的高、宽分别为400、300;图象与应用程序在同一目录(程序中用到的图片可自行定义)。当点击另一个按钮时,在图像上再输出字符串“好漂亮!”。同时要求当反复点击按钮时,就令被点击按钮的前景变为红色,而使另一个按钮的前景恢复为绿色。
7、编写一个窗口程序,要求使用内部类和匿名内部类做监视器,当在文本框text1中输入一个数字字符串之后,一个监视器负责计算这个数的平方并将结果放入文本框text2中,另外一个监视器计算立方并将结果放入文本框text3中。
8、设计一个带菜单的窗口程序,实现效果如下图:文件菜单的菜单项有:新建、保存、打印;编辑菜单的菜单项有:复制、全选、粘贴。菜单项的具体功能暂不需要实现。