《面向对象程序设计》实验指导书
《面向对象程序设计》实验指导书

实验一熟悉Visual Basic集成开发环境一、实验目的1.了解Visual Basic语言的功能特点。
2.熟悉Visual Basic的开发环境。
3.掌握建立、编辑和运行一个简单的VB应用程序的全过程。
二、实验内容创建一个“标准EXE”类型的应用程序。
要求学生建立、编辑、调试、运行和保存简单的VB程序。
三、实验步骤1.熟悉Visual Basic的开发环境。
(1)定制第一个开发环境。
1)单击“工程窗口”、“属性窗口”、“窗体布局窗口”及“工具箱窗口”右上角的关闭按钮2)单击Form,将Form窗口放到最大。
(2)定制第二个开发环境。
1)选择“视图”菜单中的“工程资源管理器”选项,显示“工程资源管理器”窗口。
2)选择“视图”菜单中的“属性窗口”选项,显示“属性窗口”。
3)选择“视图”菜单中的“窗体布局窗口”选项,显示“窗体布局窗口”。
4)选择“视图”菜单中的“工具箱”选项,显示“工具箱”窗口。
5)将“工程资源管理器”、“属性窗口”、“窗体布局窗口”、“工具箱”四个窗口用鼠标拖动到合适的位置。
(3)增加窗体。
单击“工程”菜单中的“添加窗体”选项,或者在“工程资源管理器”中的“工程”图标上单击鼠标右键,系统弹出一个快捷菜单,选择“添加窗体”选项,将在Form1的基础上添加一个窗体Form2。
(4)增加标准模块。
单击“工程”菜单中的“添加模块”选项,可增加一个标准模块Module1,再单击一次增加第二个便准模块Module2;或者在“工程资源管理器”中的“工程”图标上单击右键,系统弹出一个菜单,将鼠标移到“添加”菜单,选择“添加模块”选项,将在工程1种添加一个标准模块Module1,在选择“添加模块”选项,将在工程1种添加第二个标准模块Module2。
(5)增加类模块。
单击“工程”菜单中的“添加类模块”选项,或者在“工程资源管理器”中的“工程”图标上单击鼠标右键,系统弹出一个菜单,将鼠标移到“添加”菜单,选择“添加类模块”选项,将在工程1种添加一个类模块Class1。
《面向对象程序设计》实验指导书(实.doc

m=n;
①;
aver=sum/m;
}
void score::set_score(float x[],int n) //提供成绩
{ int i;float sum=0;
m=n;
②;
aver=sum/m;
}
void score::print_score(void) //输出成绩、平均成绩
score(void); //无参构造函数
score(float x[],int n); //构造函数重载——初始化成绩
void set_score(float x[],int n); //提供成绩
float get_score(int i) //得到第i科成绩
{return sc[i];}
float get_aver(void) //得到平均成绩
③在实际应用中,在定义类时通常应定义一至多个构造函数(重载),以对各数据成员进行初始化;如果不给出构造函数,系统将自定义一个构造函数。
④构造函数可以可以带参数,也可不带任何参数(称无参构选函数),还可以使用缺省参数。
⑤不能象普通成员函数一样单独调用。
2.析构函数
⑴析构函数的定义
格式:
~类名(void)
③默认拷贝构造函数是一种浅拷贝,当在类中定义有指针数据成员,用new分配内存空间时,通常应显示定义相应的拷贝构造函数。
㈡对象数组与对象指针
1.对象数组
⑴可以定义对象数组处理多个对象。
⑵可以用缺省参数构造函数为对象数组赋初值。
2.对象指针
可以使用指针来使用对象或对象数组。方法:
⑴定义对象指针;
⑵将指针指向某一对象(或对象数组);
《面向对象程序设计》实验指导书(选修)

《面向对象技术》实验指导专业:_________________学号:_________________姓名:_________________教师:_________________目录实验一类与对象 (4)一.实验目的 (4)二.实验内容 (4)三.提高练习 (6)四.程序清单 (7)实验二友元 (8)一.实验目的 (8)二.实验内容 (8)三.提高练习 (9)四.程序清单 (10)实验三模板 (11)一.实验目的 (11)二.实验内容 (11)三.提高练习 (12)四.程序清单 (13)实验四重载 (15)一.实验目的 (15)二.实验内容 (15)三.提高练习 (17)四.程序清单 (18)实验五继承性与派生类 (19)一.实验目的 (19)二.实验内容 (19)三.提高练习 (22)四.程序清单 (23)实验六多态性与虚函数 (25)一.实验目的 (25)二.实验内容 (25)三.提高练习 (28)四.程序清单 (29)实验七输入输出流、文件流与异常处理 (31)一.实验目的 (31)二.实验内容 (31)三.提高练习 (32)四.程序清单 (33)实验八面向对象分析、设计综合实验 (35)一.实验目的 (35)二.实验内容 (35)三.提高练习 (36)四.程序清单 (37)附录:课程设计题目 (39)第1题:设计一个学生学籍管理系统 (39)第2题:设计一个循环链表,用来表示大整数 (39)第3题:设计一个模拟电信计费程序 (39)第4题:设计一个保留字(或关键字)的统计程序 (40)第5题:设计一个文本行编辑程序 (40)第6题:设计一个数据文件处理程序 (40)第7题:设计一个超长整数类 (41)第8题:设计一个随机读写文件程序 (41)第9题:设计一个图形类体系 (41)第10题:设计一个简单生命仿真程序 (41)总结《面向对象方法》课程 (42)《面向对象方法》实验报告学号:姓名:实验一类与对象一.实验目的●学习类与对象的定义,声明和使用方法●数据成员与成员函数的访问权限●构造函数和析构函数的作用●重载成员函数●对象指针和对象数组●成员指针●静态数据成员和静态成员函数●嵌套类和子对象●常对象二.实验内容第Ⅰ题:基本练习1.定义一个矢量类Vector,其结构如下:●私有数据成员int x,y; 表示二维矢量的两个分量●构造函数实现初始化数据成员●输出数据成员函数void display( );●类外访问数据成员函数int getx( );int gety( );●功能成员函数实现矢量加、减、乘运算Vector Add(const Vector &ob2 );Vector Sub(const Vector &ob2 );int Mult(const Vector &ob2 );2.在Vector 类的基础上,定义矩阵类Matrix(2*2阶),其结构如下:●私有数据成员Vector lefttop,righttop,leftbottom,rightbottom; 表示2*2阶矩阵的四个元素。
Java面向对象程序设计语言课程设计指导书(精选5篇)

Java面向对象程序设计语言课程设计指导书(精选5篇)第一篇:Java面向对象程序设计语言课程设计指导书山东建筑大学商学院电子商务专业《Java面向对象程序设计语言》课程设计(实验)指导书一、对学生的基本要求:1、理论联系实际、严肃认真、实事求是的科学态度和勇于探索的创新精神。
2、运用所学基础理论与专业知识分析和解决实际问题,培养独立思考完成任务的能力。
3、运用Java面向对象程序设计方法、标准与规范开发小型应用软件系统。
二、设计的要求及内容及要求:应用Java面向对象程序设计语言开发小型应用软件系统。
可以从给定的选题中选择一个课题或自拟课题(自拟课题需经指导教师批准),完成系统分析、设计和开发。
具体要求如下:(1)针对你所选择的系统进行需求分析,写出系统的功能要求,设计的应用程序应具有的功能要素。
(2)程序代码应符合教学中应该具有的规范要求,类名、方法名,属性名称应与设计中实际的应用含义相符,程序中具有相应的注释。
(3)程序的界面要合理、美观。
(4)每人最终提交一个可行的应用软件程序和规范的课程设计说明书。
说明书应严格按照说明书的要求,格式清晰、规整。
并提交所设计程序的电子文档。
三、设计进度:1、17周周一~周二:选题,系统的需求分析。
分析并规划你所设计的系统应达到的功能,满足什么样的要求。
2、17周周二~周四:系统设计。
分析要达到你所要求的功能需要编写什么类,规划类的层次结构,设定好类明、方法名、属性名;规划你所设计的系统应具有什么样的界面布局。
查阅资料帮助自己规划好你的系统。
3、17周周五~18周周二:程序设计。
根据自己所规划的程序进行具体代码设计,代码设计要符合程序设计的规范要求,注意程序的编写格式。
4、18周周三:程序测试。
对自己所规划的程序进行测试,看是否有异常及程序Bug出现,并进行调试修正程序代码。
5、18周周三:编写课程设计说明书。
按照本指导书要求格式编写程序设计报告(见附件)。
面向对象程序设计实验指导书1

《面向对象程序设计》实验指导书2013.11.13目录实验1 VC++ 6.0开发环境应用入门实验2 C++简单程序设计实验3 函数的应用实验1 VC++ 6.0开发环境应用入门一、实验目的(1)了解Visual C++ 6.0的特点。
(2)熟悉Visual C++ 6.0的开发环境。
(3)学习用Visual C++ 6.0编写标准的C++控制台程序。
二、实验任务使用Visual C++ 6.0建立一个非图形化的标准C++程序,编译、运行以下程序:#include <iostream>using namespace std;int main(){cout<<"Hello! \n";cout<<"Welcome to C++! \n";}三、实验步骤1. 启动Visual C++ 6.0开发环境从“开始”菜单中选择“程序”| Microsoft Visual C++ 6.0| Microsoft Visual C++ 6.0,显示Visual C++ 6.0开发环境主窗口。
2. 创建一个项目单击File菜单中的New选项显示New(新建)对话框。
单击Projects标签,在Projects(项目)选项卡中,选择Win32 Console Application(Win32控制台应用程序)。
在Location(位置)文本框中指定一个路径,在Project Name(项目名称)文本框中为项目输入一个名字“lab1_1”,单击OK(确定)按钮。
在弹出Win32 Console Application-Step 1 of 1对话框中选择An empty project单选项,然后单击Finish(完成)按钮。
最后在New Project Information 对话框中单击OK按钮,完成项目的建立。
3. 建立C++源程序文件选择菜单命令Project | Add to Project | New对话框。
《面向对象程序设计》实验指导书 (1-6个实验,含参考代码)要点

面向对象程序设计实验指导书(适用:电子信息11级)彭召意陶立新编写计算机与通信学院2014.9目录实验一 C++基础的应用 (1)实验二类和对象的应用 (3)实验三类的构造函数、析构函数的应用 (4)实验四友员和运算符重载 (5)实验五类的继承与派生 (6)实验六类的多态性与虚函数 (7)附录:各实验的程序代码 (8)实验一 C++基础的应用(实验课时:2 实验性质:设计)实验名称: C++基础的应用实验目的: (1)进一步学习VC++6.0开发环境及程序调试方法。
(2)练习C++函数的定义及使用;(3)练习C++数组的定义及使用;(4)练习C++指针的定义及使用;(5)练习C++结构体的定义及使用;(6)练习多文件的程序的编译和运行方法;实验设备:(1)硬件:个人微机(配置不低于:CPU为P4,主频1.6G,内存256MB,硬盘40GB);(2)软件:操作系统为WindowsXP(或2000、server2003等),工具软件为Visual C++6.0。
实验内容: (1)熟悉Visual C++6.0编译系统的常用功能,特别是debug调试功能;(2)编程1:编写一个程序c1.cpp,用来求2个或3个整数的最大数。
要求:用重载函数的方法来求最大数;函数原型:int max( int a, int b) 和int max( int a, int b,int c)。
(3)编程2:编写一个程序c2.cpp,求:a!+ b! + c!的值。
要求:使用递归函数。
主程序和函数分开到两个源程序文件中,分别进行编译后,再运行;(4)编程3:有一个3*4的矩阵,要求编程求出其中值最大的那个元素的值,以及其所在的行号和列号;(5)编程4:建立一个动态链表并进行输出和删除管理。
链表的每个节点为学生信息,包括:学号,姓名,性别,下一学生信息的指针。
程序的工作:(a)建立三个学生信息的节点,然后顺序输出该三个学生信息;(b)删除中间的节点,再顺序输出学生信息。
面向对象程序设计实验指导书

x2=4 d1=5.6 d2=12 问题二:①处调用的是哪个函数? 答:调用的是 int max_def(int x, int y, int z) { int temp = 0; return (temp=(x>y?x:y))>z?temp:z; } 问题三:②处的输出结果为什么是 d2=12,而不是 d2=12.3? 答:因为①处调用的是整型函数,d2 在此函数中被转换为整型,小数点后面被删除。 2.理解下面的程序并运行,然后回答问题。
7
} private:
int month; };
int day;
int year;
void main() {
CDate a; --------------------------.Set(10,15,2007) ; a.Print(); }
1.2 实验内容
1.2.1 程序阅读
1.理解下面的程序并运行,然后回答问题。
#include <iostream.h>
int max_def(int x, int y) {
return (x>y?x:y); } int max_def(int x, int y, int z) {
int temp = 0; return (temp=(x>y?x:y))>z?temp:z; } double max_def(double x, double y) { return (x>y?x:y); } int main() { int x1 = 0;
试设计一个复数类该类有实部和虚部两个成员数据数据成员采用私有访问权限同时该类有两个公有成员函数分别用来设定数据成员的值和输出数据成员的值在主函数中分别采用对象方式指针方式和引用方式来调用该类的公有函数并设置和输出数据成员的值
#《面向对象程序设计》(C++)实验指导书

实验 1 类和对象1.1实验目的和要求(1) 理解类和对象的概念,掌握声明类和定义对象的方法。
(2) 掌握构造函数和析构函数的实现方法。
(3) 初步掌握使用类和对象编制C++程序。
(4) 掌握对象数组、对象指针和string类的使用方法。
(5) 掌握使用对象、对象指针和对象引用作为函数参数的方法。
(6) 掌握类对象作为成员的使用方法。
(7) 掌握静态数据成员和静态成员函数的使用方法。
(8) 理解友元的概念和掌握友元的使用方法。
1.2实验内容和步骤1.输入下列程序//test4-1.cpp#include<iostream>using namespace std;class Coordinate{ public:Coordinate(int x1,int y1){ x=x1;y=y1;}Coordinate(Coordinate &p);~Coordinate(){ cout<<”Destructor is calleded\n”;}int getx(){return x;}int gety(){return y;}private:int x,y;};Coordinate::Coordinate(Coordinate &p){ x=p.x;y=p.y;cout<<”copy-initialization Constructou is called\n”;}int main(){ Coordinate p1(3,4);Coordinate p2(p1);Coordinate p3=p2;cout<<”p3=(“<<p3.getx()<<”,”<<p3.gety()<<”)\n”;return(0);}(1)写出程序的运行结果。
(2)将Coordinate类中带有两个参数的构造函数进行修改,在函数体内增添下述语句:cout<<”Constructor is called.\n”;写出程序的运行结果,并解释输出结果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《面向对象程序设计》实验指导书熊利祥编武汉理工大学华夏学院2015年1月前言一、实验课目的通过本课程的学习培养学生对计算机软件开发语言及工具的综合能力。
主要介绍Java 软件开发工具及编辑工具的使用方法、语言的语法及Java类的定义和使用、使用Java进行网络和多媒体编程的方法。
通过本课程学习和上机实践,使学生掌握使用Java进行程序设计的基本技术与方法、具备软件开发的基础能力,为今后从事软件开发和应用打下基础。
二、实验要求:1.课前预习①认真阅读实验指导书,了解实验内容;②认真阅读有关实验的理论知识;③读懂程序代码。
2.实验过程①按时到达实验室;②认真听取老师对实验内容及实验要求的讲解;③认真进行实验的每一步,观察程序代码与仿真结果是否相符;④将实验过程中程序代码和仿真结果提交给老师审查;⑤做完实验后,整理实验设备,关闭实验开发板电源、电脑电源后方可离开。
3.实验报告①按要求认真填写实验报告书;②认真分析实验结果;③按时将实验报告交给老师批阅。
三、实验学生守则1.保持室内整洁,不准随地吐痰、不准乱丢杂物、不准大声喧哗、不准吸烟、不准吃东西;2.爱护公务,不得在实验桌及墙壁上书写刻画,不得擅自删除电脑里面的文件;3.安全用电,严禁触及任何带电体的裸露部分,严禁带电接线和拆线;4.任何规章或不按老师要求操作造成仪器设备损坏须论价赔偿。
目录实验一JDK与Eclipse开发环境…………………………………………………………实验二类的继承与多态实验…………………………………………………………实验三GUI图形界面设计实验……………………………………………………………实验四网络编程实验………………………………………………………………………实验一 JDK与Eclipse开发环境一、实验目的1.学会使用JDK编译和运行Java Application程序。
2.学会在Eclipse平台下编写、运行和管理Java程序。
二、实验要求1.熟悉Java程序运行环境的安装、配置方法。
2.掌握编写与运行Java程序的方法。
三、实验内容(一)在命令行方式下用JDK编译和运行Java程序。
(1)内容:用Windows记事本编辑如下Java源程序,并保存为源文件HelloWorld.java (2)程序源代码如下:public class HelloWorld{public static void main(String[] args){System.out.print("Hello World!");}}(3)编译HelloWorld.java,产生类文件HelloWorld.class。
执行“开始-所有程序-附件-命令提示符”菜单命令打开DOS窗口,用“盘符:”和cd命令转到HelloWorld.java所在目录,在命令行上键入javac HelloWorld.java回车,如果不出现错误信息,则说明编译正确,编译后的中间文件名为HelloWorld.class,位于HelloWorld.java同一目录下。
(4)运行该程序此时再键入java HelloWorld如果不出错,则在DOS窗口上看到输出“Hello World!”。
(二)Eclipse集成开发环境的使用。
(1)用Eclipse建立新的Java程序①新建项目启动Eclipse,执行“文件-新-Java项目”菜单命令,或执行“文件-新-项目”菜单命令,在弹出的“新建项目”对话框中双击“Java项目”,都会弹出“新建Java项目”对话框。
在“项目名”一栏输入一个项目名称(假定为MyProject),点击“完成”。
此时在窗口左边的“包资源管理器”中将会出现一个以项目名称命名的文件夹。
(如果窗口左半部分未出现“包资源管理器”,可执行“窗口-打开透视图-Java”菜单命令将其打开)。
②新建包单击项目名(例如MyProject)前面的加号展开该文件夹,将光标定位在其下的src文件夹上,执行“文件-新-包”菜单命令,在弹出对话框的“名称”一栏输入一个包(package)名(假定为myPackage),点击“完成”按钮。
此时在“包资源管理器”的“MyProject / src”之下将出现一个以包命名的文件夹myPackage。
注:一个项目下可以建立多个包,包中任何源文件中定义的类都可以被同一个包中任何源文件中定义的类所直接引用。
③新建类将光标定位在包名(例如myPackage)上,执行“文件-新-类”菜单命令,在弹出的对话框的“名称”一栏输入一个类名(假定为HelloWorld),点击“完成”按钮。
此时在“包资源管理器”的“MyProject / src / myPackage”之下出现一个以类命名的Java源文件HelloWorld.java,窗口中部便是该文件中的Java源代码,其中第一行是包的声明:package myPackage;其下则是类的定义。
④输入Java Application源代码可以看到这里的类定义与前面“Java Application 程序实例”中的类定义的框架是完全相同的,将Java Application程序实例类框架中的3行源代码拷入类框架中,从而形成下列完整的Java Application源程序:package myPackage;public class HelloWorld{public static void main(String[] args){System.out.print("Hello World!");}}⑤运行Java Application程序执行“运行-运行方式-Java应用程序”菜单命令,或执行“运行-运行”菜单命令,在弹出的对话框中选择“Java应用程序”。
如果源程序无语法错误,则编译后会直接执行。
代替命令行方式将结果输出到控制台上,Eclipse会将结果输出到窗口右下部的“控制台”子窗口中:Hello World!(2)用Eclipse管理老的Java程序①删除项目、包或源文件如果想删除Eclipse工作空间中的某些项目、包或源文件,则应当在Eclipse中进行而不应当在Windows资源管理器中进行,这是因为工作空间状态信息是被Eclipse实时地记录在每个项目的PROJECT文件中的,如果在Eclipse之外删除文件或文件夹,则会造成状态信息与文件系统的不同步。
先在资源管理器中用“复制”和“粘贴”命令将项目文件夹MyProject备份到另一逻辑盘上,然后在Eclipse的“包资源管理器”中将光标对准MyProject文件夹,按鼠标右键并选择“删除”,确认后,文件夹MyProject将从工作空间逻辑地删除。
若确认时选中“删除磁盘上的内容”,则选定的文件或文件夹将同时从workspace文件夹物理地删除。
②导入备份项目到Eclipse工作空间备份的Java项目要重新使用Eclipse进行管理,必须导入到硬盘的Eclipse工作空间。
执行“文件-导入”菜单命令,在弹出的对话框中选择“常规-现有项目到工作空间中”,点击“下一步”,在弹出的对话框中点击“浏览”,在“浏览文件夹”对话框中找到MyProject 文件夹,将光标定位在该文件夹上,点击“确定”再点击“完成”,备份的项目就被整体导入Eclipse工作空间(注意:如果工作空间中已存在同名项目,则不能将该项目整体导入,只能按下述方法将文件或文件夹逐个导入)。
③导入Java源文件到Eclipse工作空间备份的其它文件夹或Java源文件要使用Eclipse管理,也必须导入硬盘的Eclipse工作空间,但工作空间中必须有适当的项目和包来存放它们,如果没有,就必须按照前面所述的方法首先建立项目和包。
现在我们在Eclipse下再次删除并重新建立项目MyProject和包myPackage,然后在“包资源管理器”中将光标定位在包myPackage上,执行“文件-导入”菜单命令,在弹出的对话框中选择“常规-文件系统”,点击“下一步”,在弹出的对话框中点击“浏览”,在“从目录中导入”对话框中找到备份文件夹MyProject,展开并进入其中的src文件夹,将光标定位在存放包的文件夹myPackage上,点击“确定”,在弹出的对话框的上部右栏选中源文件HelloWorld.java,再点击“完成”,即可将该源文件导入项目和包。
实验二类的封装、继承与多态实验一、实验目的1.通过编程和上机实验理解Java语言是如何体现面向对象编程基本思想。
2.了解类的封装方法,以及如何创建类和对象。
3.了解成员变量和成员方法的特性。
4.掌握面向对象程序设计的方法。
5.掌握类的继承和多态的作用。
二、实验要求1.编写一个体现面向对象思想的程序。
2.编写体现类的继承性(成员变量,成员方法、成员变量隐藏)的程序。
3.编写体现类的多态性(成员方法重载、构造方法重载)的程序。
三、实验内容(一)编写一个体现面向对象思想的程序。
(1)程序功能:求某个数的若干次幂(2)程序源代码如下:class P{int a,b,pwr;P(int i,int j){a=i;b=j;pwr=1;for(;j>0;j--)pwr*=i;}int Getpwr(){return pwr;}}public class power{public static void main(String[] args){P p1=new P(5,3);P p2=new P(17,2);System.out.println(p1.a+"的"+p1.b+"幂等于"+p1.Getpwr());System.out.println(p2.a+"的"+p2.b+"幂等于"+p2.Getpwr());}}(3)编译power.java,产生类文件power.class。
(4)运行该程序(二)编写一个体现类的继承性的程序。
1.继承的概念新类可从现有的类中产生,并保留现有类的成员变量和方法并可根据需要对它们加以修改。
新类还可添加新的变量和方法。
这种现象就称为类的继承。
当建立一个新类时,不必写出全部成员变量和成员方法。
只要简单地声明这个类是从一个已定义的类继承下来的,就可以引用被继承类的全部成员。
被继承的类称为父类或超类(superclass),这个新类称为子类。
Java 提供了一个庞大的类库让开发人员继承和使用。
设计这些类是出于公用的目的,因此,很少有某个类恰恰满足你的需要。
你必须设计自己的能处理实际问题的类,如果你设计的这个类仅仅实现了继承,则和父类毫无两样。
所以,通常要对子类进行扩展,即添加新的属性和方法。