面向对象实验报告

面向对象实验报告
面向对象实验报告

面向对象分析与设计

实验报告

姓名:

学号:

班级:计11-1班

指导老师:张磊

目录

B2C网上购物系统需求分析报告 (2)

实验二用例图 (8)

实验三、四状态图和活动图 (12)

实验五类图 (13)

实验七交互图 (15)

B2C网上购物系统需求分析报告

一、功能性需求

这次开发的软件项目是一个网上购物系统。使用此系统的顾客通过互联网进行网上购物;使用此系统的管理员通过互联网进行系统的管理。

B2C网上购物系统的功能如下:

(1)顾客:

1.顾客能够通过商品类别来寻找属于该类别的商品,并获得商品的摘要信息。

2.顾客能够通过输入某些关键字,对商品进行查询,并获得符合检索条件的商品的摘要信息。

3.顾客能够在商品详细画面上获得商品的详细介绍信息。

4.顾客能够在页面上输入注册信息后,注册成为网站的会员。

5.顾客能够在页面上修改自己的注册资料,更新原有的注册信息。

6.顾客能够在输入合法的用户账号和密码后,登录系统。

7.顾客能够在任何时间退出系统。

8.顾客能够查看当前订单的最新状态和历史的订单数据。

9.顾客能够将称心的商品放入购物车。

10.顾客能够查看购物车中的商品。

11.顾客能够更新购物车中商品的数量,或删除购物车中的商品。

12.顾客能够对购物车中的商品结账。

13.顾客能够指定配送地址。输入过的配送地址被保留在配送地址簿中,以便下次使用。

14.顾客能够选择支付方式。可选的支付方式:货到付款和信用卡支付等多种形式。

15.顾客能够在订单确认画面完成订单。

(2)管理员:

1.管理员能够在输入合法的用户账号和密码后,登录系统。

2.管理员能够在任何时间退出系统。

3.管理员能够维护业务数据,包括商品,订单和会员等数据的新增,更新,删除和检索。

4.管理员能够维护权限数据,包括新增,更新,删除,检索操作。

5.管理员能够维护管理员数据,包括新增,更新,删除,检索操作。

6.管理员能够通过批处理程序完成同财务系统的交互,更新订单付款状态的最新信息。

7.管理员能够通过批处理程序完成同库存系统的交互,更新商品库存数的最新信息。

8.管理员能够通过批处理程序完成同物流系统的交互,更新订单配送状态的最新信息。

(3)其他通用功能性需求

1日志系统:

所有的系统出错信息都必须被记录到出错日志中。信息的格式必须是系统错误号码,日期,时间,错误信息。

和用户相关的每个页面迁移信息都必须被记录到追寻日志中。信息的格式必须是用户帐号,日期,时间,迁移的页面名。

每次处理前后的消耗的内存和处理时间都必须被记录到性能日志中。信息的格式必须是日期,时间,消耗的内存,处理时间。

系统所有的电子邮件必须通过预先设定的邮件系统发送。

3.监视系统

监视系统必须扫描日志系统如果有任何异常的情况,必须使用邮件系统向管理员发警告信。

4.安全系统

安全系统必须拦截非法的访问,和对网站的恶意进攻包括(XSS,SQL Injection,非法盗链等,非法字符输入等)。

5.优惠规则

系统目前定义的优惠规则为2个。

按会员已付款的订单金额,将会员分成不同的级别,每个级别在总价上享有5%,10%,15%,20%等不同的折扣。

在一定的时间期限内,可以免除配送费。

6.付款方式

系统目前定义的付款方式为2个。

信用卡支付和货到付款。

7.预设管理员

在系统之初,将预先设定在一个管理员,他具有系统所有的权限。他

的密码可以被再次修改。

二、功能模块

1.登录系统:

用户如果要进行购物操作,需要输入正确的用户名和密码,如果输入错误,则停留在登录页;

客户如果从来没有在本网站购买过东西,需要注册一个Customer账

号;

3.浏览商品系统:

进入B2C系统后,客户必须知道有关的商品信息,可以得到商品的名称、价格、各种属性信息,并能根据需要输入相关信息进行搜索;

4.购物系统:

当客户看中某件商品后,可以根据需要进行购买,操作后生成购

物单,然后可以下订单。

三、非功能性需求

1.可用性

下面列出了和系统的可用性相关的需求。

系统客户端

系统的客户端必须是Web浏览器,不需要安装额外的软件。

系统易用性

网上购物系统的用户界面设计必须简单明了,不需要顾客花费额外的时间来学习。

帮助服务

网上购物系统的每个重要页面上必须都有相关的帮助页面的链接,顾客可以使用它们来获得必要的帮助信息。

2.可靠性

可用性

网上购物系统必须能够24小时*7天的工作。

系统严重错误发生的平均时间间隔

系统发生严重错误的平均时间间隔应该大于300小时。

3.性能

最大的并发人数

网上购物系统的最大并发访问数应该为1000。在这个范围内,系统应该能够很好的工作。

最大系统相应时间

在最大并发数为1000范围内时,系统对用户的最大相应时间应该小于10秒/1万条数据。

最大的事务处理时间

网上购物系统的用户事务的最大处理时间应该是30秒,如果超过这个时间系统应该自动结束用户的事务处理。

4.保障性

出错对应时间

当系统发生错误时,对应的补丁程序的发布时间应该是小于2天/一件bug。

技术支持时间

本系统完全上线后的一年内,提供的技术支持时间应该是每周8小时*5天。

实验二用例图

一、实验目的

1.学会分析系统中的参与者和用例

2.掌握用例图的绘制方法

二、实验器材

1. 计算机一台;

2. Rational Rose 工具软件;

三、实验内容

画出b2c的用例图并写出用例描述。

四、实验结果

1)、用例描述

1.商品类别

1.1用例简述

顾客浏览商品类别,系统返回此类别下的子类别或商品的一览。

1.2基本事件流

1 顾客:在商品大类别页面,选择某个大类别。

2 系统:根据顾客选择的商品类别,返回此类别下所有的中类别信

息。

3 顾客:在商品中类别页面,选择某个中类别。

4 系统:根据顾客选择的商品类别,返回此类别下所有的小类别信

息。

5 顾客:在商品小类别页面,选择某个小类别。

6 系统:根据顾客选择的商品类别,返回此类别下所有的商品信息。

7 用例结束。

顾客登录系统

2.1用例简述

顾客输入合法的用户编号和密码后,登录系统。

2.2基本事件流

1 顾客:在顾客登录页面上,输入用户编号和密码。

2 系统:根据用户编号和密码检索系统,获得顾客信息。

3 系统:在会员信息页面上,显示欢迎顾客登录系统。顾

客身份由游客变为会员。

4 结束用例。

2.管理购物车

3.1用例简述

顾客查看购物车中的商品。

3.2基本事件流

1 顾客:提交查看购物车的请求。

2 系统:在购物车页面,显示购物车中的所有商品信息

(商品名,价格,数量等)。

3 顾客:修改购物车中选购商品的数量,并提交此请求。

4 系统:检查商品的库存数。

5系统:更新购物车中选购商品的数量。

6 系统:在购物车页面上,显示更新后的购物车中商品信

息。

7 顾客:选择购物车中的商品,并提交删除请求。

8 系统:删除购物车中顾客选择的商品。

9 系统:在购物车页面上,显示更新后的购物车中商品信

息。

10 例结束。

2.管理员退出系统

4.1用例简述

管理员退出系统。

4.2基本事件流

1 管理员:提交退出系统的请求。

2 系统:注销管理员。

3 系统:显示管理员登录页面,提示此管理员已经退出

系统。

4 用例结束。

2.管理业务数据

5.1用例简述

管理员管理商品,订单,会员等相关的业务数据,包括对数据的新增,更新,删除,查询。

5.2基本事件流

1 管理员:实施业务数据的新增,更新,删除,查询操

作。

2 系统:在系统中实现对业务数据的相关操作。

3 用例结束。

2.管理系统权限

6.1用例简述

管理员管理系统权限。

6.2基本事件流

1 管理员:对系统中的全体的权限进行新增,更新,删

除,检索操作。

2 系统:在系统中实现权限相关的操作。

3 用例结束。

2.管理管理员

7.1用例简述

管理员管理管理员的数据。

7.2基本事件流

1 管理员:对系统中的管理员数据进行新增,更新,删除,

检索操作。并赋予管理员系统的某些权限。

2 系统:在系统中实现相关的操作。

3 用例结束。

2.付款状态批处理

8.1用例简述

此批处理程序完成同财务系统的交互,获得订单的最新状态,并更新购物系统中订单付款状态。

8.2基本事件流

1 管理员:运行此批处理程序,并将自己的用户名和

密码作为参数。

2 系统:验证管理员是否有执行程序的权限。

3 系统:连接财务系统。

4 系统:获得一组订单的最新支付状态的列表。

5 系统:根据获得的列表来更新购物系统内订单的付

款状态。

6 用例结束。

2.商品库存批处理

9.1用例简述

此批处理程序完成同库存系统的交互,获得商品的最新库存数,并更新购物系统中商品的库存数。

9.2基本事件流

1 管理员:运行此批处理程序,并将自己的用户名和

密码作为参数。

2 系统:验证管理员是否有执行程序的权限。

3 系统:连接库存系统。

4 系统:获得一组商品的最新库存数的列表。

5 系统:根据获得的列表来更新购物系统内商品的库

存数。

6 用例结束。

2)部分用例图

.

五、实验体会

通过本次试验,我学会了分析系统中的参与者和用例,掌握了用例图的绘制方法,刚开始接触rational rose 还不太熟练,相信在以后的学习中会更熟练。

实验三、四状态图和活动图

一、实验目的

1.熟悉状态图和活动图的基本功能和使用方法。

2.掌握如何使用建模工具绘制状态图和活动图方法。

二、实验器材

1. 计算机一台;

2. Rational Rose 工具软件;

三、实验内容

根据B2C系统开发进度,在完成对系统的需求建模,得到用例模型后,应针对每个用例进行业务分析,说明其具体的业务流程,现系统分析部指派您完成该项任务。

四、实验截图

状态图

活动图

五、实验体会

通过本次实验,我熟悉状态图和活动图的基本功能和使用方法。掌握了如何使用建模工具绘制状态图和活动图方法。

活动图和状态图都是属于动态图,描给了系统在某一事件下,从一个状态转为另一个状态。

实验五类图

一、实验目的

1.理解类的基本概念

2.理解类间的关系

3.掌握类图的绘制方法

二、实验器材

1. 计算机一台;

2. Rational Rose 工具软件;

三、实验内容

通过前面内容的学习,完成了对B2C系统的需求的初步分析,得出系统的用例图和相应的活动图。通过这两种图我们可以初步了解系统的业务处理过程,但对业务处理过程的处理状态间转换了解仍不够,这不利于设计人员对系统业务的进一步理解,而状态图能从对象的动态行为的角度去描述系统的业务活动。因此,指派你运用本节所学的状态图,

四、实验结果

五、实验体会

通过本次试验,我理解了类的基本概念,理解了类间的关系,掌握了类图的绘制方法实验六类的关系

一、实验目的

1.理解类间关系的基本概念。

2.掌握描绘类间关系的方法。

3.掌握在Rational Rose中绘制类关系的操作方法。

二、实验器材

1.计算机一台。

2.Rational Rose 工具软件。

三、实验内容

通过对前面内容的学习,使我们完成了B2C系统的需求分析,并从业务对象中抽象出了类。我们知道类通常是不会单独存在,而是由关联、泛化、依赖等关系相互协作来静态描述业务系的。因此,我们在找出系统中所存在的类的前提下,需要进一步对业务对象间如何联系进行建模。现指派你运用本节所学的相关知识,完成如下任务:

四、实验截图

五、实验小结

通过实验,我更加深入理解了类间关系的基本概念,基本掌握了描绘类间关系的方法,熟练掌握了在Rational Rose中绘制类关系的操作方法。

实验七交互图

一、实验目的

1.学会用协作图实现用例

2.掌握顺序图的绘制方法以及顺序图和协作图的相互转换。

二、实验器材

1. 计算机一台;

2. Rational Rose 工具软件;

三、实验内容

画出顺序图,并转换为协作图。

四、实验截图

顺序图

协作图

五、实验体会

通过本次试验,我学会了用协作图实现用例,掌握了顺序图的绘制方法以及顺序图和协作图的相互转换。

Java面向对象程序设计 实验报告

一、实验目的及内容 目的:掌握和巩固Java面向对象程序设计的概念、方法。 内容: 1.设计一个Java程序,该程序运行后,说明:一个类的所有对象共享同一个类成员变量;一个类 的多个对象拥有各自的实例成员变量。 2.编写一个表示人的类Person,该类满足以下要求: ●有两个private成员变量:name(名字)、age(年龄);在Person类外访问这两个成员变量均通 过接口器函数(getXXX,setXXX)。 ●该类具有一个有两个参数的构造函数,这两个参数分别用来初始化name和age成员变量。 ●该类包含一个方法public boolean older(Person r),用于比较当前对象年纪是否比参数r的年纪大, 若是,则返回true,否则,返回false。 编写另外一个类:TestPerson,该类包含下面函数: public static void sortPerson(Person[] personList),在该函数中利用Person类的older方法实现对数组personList按年龄从小到大排序。main函数位于该类中。在main函数中 (1)创建Person类的10个对象,并保存到一个数组中,创建10个对象时,每个对象的年龄为0~100的一个随机数(用Math.random()函数得到)。 (2)输出这个数组中每个对象的名字、年龄。 (3)调用sortPerson方法,对这个数组中的10个Person对象按年龄排序。 (4)输出排序后数组中每个对象的名字、年龄。 二、要求 1.给出上述程序的中涉及到的类的类图(可用visio画)、解决上述问题的思路、代码 和测试结果。 1.设计一个Java程序,该程序运行后,说明:一个类的所有对象共享同一个类成员变量;一个类的多个对象拥有各自的实例成员变量。 设计思路:要实现一个类的所有对象共享同一个类成员变量;一个类的多个对象拥有各自的实例成员变量。我创建了一个Number类,并创建了两个对象number1和number2,该类有一个类成员函数static int numberofsum(int a, int b)来求和,一个类成员变量countnumber来统计对象的个数,还有实例成员变量num,通过两个对象求和以及统计对象个数,说明了一个类的所有对象共享同一个类成员变量,两个对象都有自己的num值说明了一个类的多个对象拥有各自的实例成员变量。

面向对象程序设计实验报告完整版

资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。 综合实验报告 面向对象程序设计 专业名称: 物联网工程 ___班级: _____ 级2班__ ___________姓名: 你哥哥 学号: 02051928 信息科学与工程学院 二零一三年七月

第一题: (1) 1.1题目概述 (1) 1.2设计思路 (2) 1.3设计说明与调试分析 (2) 1.4编码实现 (2) 1.5程序运行结果 (5) 1.6设计心得 (5) 第二题: (6) 2.1题目概述 (6) 2.2设计思路 (7) 2.3设计说明与调试分析 (7) 2.4编码实现 (7) 2.5程序运行结果 (11) 2.6设计心得 (11)

第一题: 1.1题目概述 用抽象类设计计算二维平面图形图形面积的程序, 在基类TDshape中设计纯虚函数area()和printName(), area()用于计算几何图形的面积, printName()用于打印输出几何图形的类名, 如Triangle类的对象就打印输出”Triangle”。每个具体形状的类则从抽象类TDshape派生, 各自需要定义其它独有的数据成员和成员函数, 而且定义area()和printName()的具体实现代码, 如图所示。 要求编写以TDshape为接口的函数, 借以访问具体类如

Triangle和Rectangle类的成员函数area(), printName ()。1.2设计思路 由简到繁, 逐步实现。 1.3设计说明与调试分析 编写基类TDshape->编写虚函数->编写继承类Triangle ->实例化TDshape和Triangle ->调用基类虚函数实现调用继承类相应函数->同样的方式处理继承类Rectangle. 1.4编码实现 #include using namespace std; class TDshape{ public: virtual void area()=0; virtual void printName()=0; }; class Triangle:public TDshape{ private: double width,height;

实验一 Java面向对象基础 实验报告

实验一Java面向对象基础、数组实验报告 一、实验目的 1. 理解面向对象编程基本思想 2. 了解类的封装方法,以及如何创建类和对象 3. 掌握面向对象程序设计的方法,了解类的继承性和多态性的作用 4. 掌握Java 中的数组定义、引用 二、实验要求 编写程序时要注意体现面向对象思想,体会不同访问控制符的作用。 1. 编写一个Vehicle类和它的二个子类Bus类和Boat类。(要求:程序要有构造方法重载;要能体现类的多态性) 2. 定义一个由若干个整数组成的数组,要求输出该数组的平均值以及所有的奇数之和。 3. 随机生成30个0-9之间的数字,分别统计0-9这10个数字分别出现了多少次。 三、实验内容及结果 1. 编写一个Vehicle类和它的二个子类Bus类和Boat类。 public class Vehicle { private String color; public Vehicle() { this("black"); } public Vehicle(String color) { this.color = color; } public String toString() { return "this is a " + this.color + " vehicle"; } } class Bus extends Vehicle { private int passagerNumber; public Bus() { this(50, "black"); } public Bus(int number) { this(number, "black"); } public Bus(int number, String color) { super(color); this.passagerNumber = number; } public String toString() {

面向对象分析与设计实验报告

面向对象分析与设计实验报告 题目:宿舍管理系统 学号:200*********** 姓名:****** 班级:09软件*****04 完成时间:2011.11.09

目录 1 系统功能需求 (3) 1.1管理系统模块 (3) 1.2查询学生模块 (3) 1.3学生管理模块 (4) 1.4资料修改模块 (5) 1.5楼栋管理模块 (6) 1.6出入登陆模块 (6) 2 建立需求模型 (7) 2.1 划分子系统 (7) 2.2 识别参与者 (8) 2.3 识别用况 (8) 2.4 对需求进行捕获与描述 (9) 3 系统分析 (11) 3.1 寻找类 (11) 3.2 建立状态机图 (12) 3.3 建立类图 (12) 3.4 建立顺序图 (13) 4 系统设计........................................................................... 1错误!未定义书签。 4.1 问题域部分设计 (14) 4.2 人机界面部分设计 (14) 5 总结 (16) 参考文献 (17)

1.系统的功能需求 我校学生公寓现为手工管理,效率低、易出错、手续繁琐,而且耗费大量的人力,物力,财力。故设计一个学生公寓管理系统,管理学生住宿情况,员工情况,处理学生离校,管理人员来访情况等功能。通过此系统,后勤人员可以对学生公寓的各项情况实行电脑化管理,以提高工作效率,也使得公寓管理所需的各项信息能方便快速进行录入,查询,删除和更新。 面对学生公寓管理工作的特点以及该管理工作的具体问题, 本系统可以解决以下问题: (1)录入公寓各学生的基本情况。 (2)全面查询学生的基本情况。 (3)对学生离校进行处理。 (4)每学期对学生住宿进行注册。 (5)对来访人员进行出入管理。 (6)对学生的财务进行登记管理。 (7)对楼栋物资和楼栋的管理。 (8)对各项情况进行修改,删除,更新。 (9)友好的操作界面, 以及简单快速的操作. (10)多种查询方式。 本系统针对学生公寓管理日常的工作程式, 对学生公寓的各项情况例如:学生信息,学生个人财产信息,来访人员信息等进行有效管理,并能通过各方法进行快速方便的查询。使学生公寓管理工作运作简明、清晰,各状况一目了然,使学生公寓管理工作更加科学化、规范化。 1.1管理系统模块:实现用户退出功能。 1.2查询学生模块:该模块包括五个子模块 1.按学号查询——实现按学号查询学生信息 2.按姓名查询——实现按姓名查询学生信息 3.按学生班级查询——实现按学生班级查询学生信息 4.按家庭住址查询——实现按家庭住址查询学生信息 5.混合查询——实现按混合查询学生信息

实验2:Java面向对象程序设计

实验2:Java面向对象程序设计(一) 实验目的 ●掌握类的定义;掌握构造方法的使用;掌握对象的创建。 ●掌握静态变量与静态方法的使用;了解静态变量和成员变量的区别。 ●熟悉访问修饰符的作用;掌握访问修饰符的使用方法。 ●掌握方法的重载;掌握访问器get/set方法。 实验步骤 一、类和对象的创建 1. 创建一个圆类,成员变量有半径radius和圆周率pi,提供计算圆面积的方法,并在main方法中创建圆类的对象,调用其计算面积的方法进行测试。 2. 编写上述代码,编译运行代码,查看程序执行结果。 ●试述程序中两个类的各自作用。 ●类Circle都封装了什么?求圆面积的初始数据是通过哪个方法实现的?请修改程序采用构造函数的方法初始化数据。 ●类Circle是如何声明的?在类中都声明了什么?在主函数中是如何创建Circle类对象的? 二、静态变量和静态方法的设计 (一). 静态变量和实例变量练习 1. 创建一个类,类名为StaticVariableTest,包含static变量和实例变量,类型为int型,在main方法中分别调用这2个变量并且输出结果。 2. 部分源代码如下: 3. 将上述代码中的main方法补充完整后,编译运行代码,查看程序执行结果。 ●根据完善后的源码,分析调用静态变量和实例变量有什么不同? (二). 静态方法和实例方法练习 1. 创建一个类,类名为StaticMethodTest,包含一个静态方法和一个实例方法,在main方法中分别调用这个两个方法进行测试。

2. 部分源代码如下: 3. 将上述代码中的main函数补充完整,编译运行代码,查看程序执行结果。 ●根据完善后的源码,分析如何调用静态方法和实例方法? 三、访问修饰符与方法的重载 (一). 访问修饰符练习 1. 创建一个Person类,在该类中用不同的访问修饰符设立不同的person属性,再创建一个PersonTest类,包括main方法,在此类中分别访问Person类中各个属性。 2. 源代码如下: 3. 先填写下面的表格,在预测结果中,如果能打印输出,填写程序输出结果,否则填“N”。 ●记录程序运行结果。 表4-3-1 预测和验证结果

面向对象技术-实验报告

实验报告 课程名称Java程序设计 实验项目实验一类、对象与构造函数 实验二派生类与继承 系别___________理学院_____________ 专业/班级_________电技1302____________姓名______蔡超月____________ 实验日期_______________________ 成绩_______________________ 指导教师夏红科

一、实验题目:实验一类、对象与构造函数 实验二派生类与继承 二、实验内容: (1)创建一个雇员类,该类中有数据成员有姓名、家庭住址和邮政编码等,其功能有修改姓名、显示数据信息。 要求:雇员类的定义作为.h保存 雇员类功能函数的实现放在.cpp中。 雇员类的使用放在单独的.cpp文件中,该文件使用#include编译预处理命令包含类定义的头文件,在main()函数中使用雇员类创建几个对象并显示信息。 (2)定义一个哺乳动物类,再由此派生出人类、狗类和猫类,这些类中均有speak()函数,请设计相应的类层次结构并加以实现,观察在调用过程中,到底使用了哪个类的speak()函数。 (3)设计一个能细分为矩形、三角形、圆形和椭圆形的图形类,使用继承将这些图形分类,找出能作为基类部分的共同特征(如宽,高,中心点等)和方法(如初始化、求面积等),并设计多种继承模式来测试继承的属性。 三、程序清单及结果:(需要标明实现程序对应的实验内容,并给出合理的程序注释及运行结果) 1)程序清单及注释 内容1: #include #include using namespace std; class employee { protected: string name1; string address1; string shi1; string sheng1; string post1; char name[10]; char address[20]; char shi[10]; char sheng[10]; char post[7]; int num; public: shuru(); void changename(char str[]); void display();

Java面向对象程序设计_习题解答

Java面向对象程序设计 清华大学出版社 (编著耿祥义张跃平) 习题解答 建议使用文档结构图 (选择Word菜单→视图→文档结构图)

习题1 1.James Gosling 2. (1)使用一个文本编辑器编写源文件。 (2)使用Java编译器(javac.exe)编译Java源程序,得到字节码文件。 (3)使用J ava解释器(java.exe)运行Java程序 3.Java的源文件是由若干个书写形式互相独立的类组成的。 应用程序中可以没有public类,若有的话至多可以有一个public类。 4.系统环境path D\jdk\bin; 系统环境classpath D\jdk\jre\lib\rt.jar;.; 5. B 6.Java源文件的扩展名是.java。Java字节码的扩展名是.class。 7.D 8.(1)Speak.java (2)生成两个字节码文件,这些字节码文件的名字Speak.class 和Xiti8.class (3)java Xiti8 (4)执行java Speak的错误提示 Exception in thread "main" https://www.360docs.net/doc/b313466904.html,ng.NoSuchMethodError: main 执行java xiti8得到的错误提示 Exception in thread "main" https://www.360docs.net/doc/b313466904.html,ng.NoClassDefFoundError: xiti8 (wrong name: Xiti8) 执行java Xiti8.class得到的错误提示 Exception in thread "main" https://www.360docs.net/doc/b313466904.html,ng.NoClassDefFoundError: Xiti8/class 执行java Xiti8得到的输出结果 I'm glad to meet you 9.属于操作题,解答略。

面向对象程序设计实验报告

. , 面向对象程序设计实验报告 班级:计算机科学与技术11-5 学号:0505 ( 姓名:高冉冉 日期:2012/7/2 \

题目3: 1.问题描述: 假设有图书类Book,包括书名、出版社名称、作者姓名、图书定价等数据成员。编程序完成Book类的设计,从键盘读入10本图书的各项数据,并将这10本图书的相关数据写入磁盘文件中,然后从中读出各图书数据,计算所有图书的总价值,并显示每本图书的详细信息,每本图书的信息显示在一行上。 2.实现代码: #include · #include #include #include<> using namespace std; class Book { private: char bookName[20]; etPrice(); - ioFile<>book[i]; cout<

JAVA类的继承实验报告

《面向对象程序设计》实验报告 实验六、类的继承 课程代码:1H10500学分:6 实验类型:实践型实验学时:4个学时 实验时间:2017.11.23 实验地点:5407 班级:计算机164 专业:计算机科学与技术专业学号:2016011147 姓名:林文辉 一、实验目的 (1)学习JAVA继承的思想 (2)了解JAVA语言继承的实现 二、实验内容及步骤 内容:在圆柱体类Cylinder里,用一个构造方法调用另一个构造方法 步骤:方案的设计与分析(类结构图。。。。。。) (1)找出对象的共同属性和行为 (2)设计代表共同状态与行为的类 (3)决定子类是否需要让某项行为有特定的不同的运行方式 (4)寻找更多抽象化的机会 (5)完成类的继承层次 三、实验过程及结果 实验1代码: abstract class Graphics { abstract void parameter(); abstract void area(); } class Rectangle extends Graphics{ double h,w; Rectangle(double u,double v){h=u;w=v;} void parameter() { S ystem.out.println("矩形高度为:"+h+",矩形宽度为:"+w); } void area() { S ystem.out.println("矩形面积为:"+(h*w)); } }

class Circle extends Graphics{ double r; String c; Circle(double u,String v){r=u;c=v;} void parameter() { System.out.println("圆半径为:"+r+",圆颜色为:"+c); } void area() { System.out.println("圆面积为:"+(Math.PI*r*r)); } } class ExamAbs{ public static void main(String args[]) { Rectangle rec=new Rectangle(2.0, 3.0); Circle cir=new Circle(4.0, "Red"); Graphics[]g= {rec,cir}; for(int i=0;i

《面向对象分析与设计》实验报告

《面向对象分析与设计》 实验报告 班级:计科09-4班 姓名:郑翼 学号:08093435

实验一用例图 一、实验目的 1.学会分析系统中的参与者和用例 2.掌握用例图的绘制方法 二、实验器材 1. 计算机一台; 2. Rational Rose 工具软件; 三、实验内容 画出A TM系统的用例图 四、实验截图

五、实验体会 通过这次实验,理解了用例图的基本用法,并且初步掌握了Rational Rose软件的使用。对以后面向对象的学习都是十分重要的。

实验二交互图 一、实验目的 1.学会用协作图实现用例 2.掌握顺序图的绘制方法以及顺序图和协作图的相互转换。 二、实验器材 1. 计算机一台; 2. Rational Rose 工具软件; 三、实验内容 画出A TM取款的顺序图,并转换为协作图。 四、实验截图 顺序图

协作图 五、实验体会 通过实验,学会了用协作图实现用例,掌握了顺序图的绘制方法以及顺序图和协作图相互转换的方法,进一步的加深了对软件的使用。

实验三类图 一、实验目的 1.理解类的基本概念 2.理解类间的关系 3.掌握类图的绘制方法 二、实验器材 1. 计算机一台; 2. Rational Rose 工具软件; 三、实验内容 分析选课系统中的类及关系,然后画出它们的类图。 四、实验步骤 1.分析 在选课系统中,通过分析可抽象出如下几个类: 1.学生类 2.管理员类 3.课程类 学生类和管理员类的属性较容易分析,这里只列出课程类的属性和方法:(1)课程名称 (2)开课教室 (3)课程号 (4)授课教师 (5)选课的学生 (6)开课起始时间 (7)允许选课的学生人数 (8)设置课程号 (9)设置课程名称 (10)查询课程号

java实验报告——对象和类

成绩: 面向对象原理与Java实践课程实验报告 实验1:对象和类 姓名 ____ 班级 ____ 学号 ____ 实验地点 ____ 实验时间 ____ 指导教师 ____

面向对象原理与Java实践课程实验报告 实验1:对象和类 一、实验目的: ●掌握类的定义及应用方法 ●掌握对象的创建方法,了解实例变量、实例方法和静态字段的特性 ●体会Java在类和对象的设计中体现的面向对象的思想 二、实验要求: ●具备Java基础知识(教材第1、2章内容) ●掌握Java中对象和类的基本概念和应用方法(教材第3章内容) ●设计类时注意保证类的封装性 ●编写程序完成以下实验内容并上交实验报告(包括电子文档与纸质文档) 三、实验内容: 设计并实现一个“广石化院电信学院学生通信录”系统。系统采用字符界面,在出现的主界面中按提示输入相应字符以选择“增加”、“删除”、“修改”、“查找”等功能进行操作(其中“查找”功能除能够查找某个学生的信息之外,还能够显示所有学生的信息)。记录的存储可采用数组或链表的方式。 四、设计思路: 为了实现该系统,首先要需要两个类;一个类为主界面服务,用于接收用户输入信息以及做出相关反应;一个类为学生信息服务,定义学生通讯录信息的各个字段,以及操作字段的各个方法,考虑到部分字段的属性问题,所以将操作方法都写在学生类中,不再另外放置在其他类中。学生信息将会采用学生类的对象数组来储存。 五、程序源代码: 下面是ZhuJieMian 主界面类 package pkg_TXL; import java.util.Scanner; public class ZhuJieMian { /** * * 该类为通讯录系统的主界面提供主要功能显示,以及负责主菜单与子菜单的正常跳转 */ public static void main(String[] args) {

面向对象程序设计,实验报告

安徽工业大学 面向对象程序设计实验报告 实验课程:《C++语言程序设计》 学生姓名: 学号: 专业班级: 2011年 12 月 18 日

目录 实验1熟悉C++开发环境及简单程序设计和应用 (3) 实验2基本控制结构程序设计 (6) 实验3 类与对象 (10) 实验4友元函数与友元类 (13) 实验5数组与指针 (16) 实验6静态成员 (20) 实验7类的继承 (22) 实验8多态 (24)

安徽工业大学实验报告 学生姓名:张虹学号:6100409033 专业班级:网络工程091 实验类型:□验证□综合□设计□创新实验日期:实验成绩: 实验1熟悉C++开发环境及简单程序设计和应用 一、实验目的 1.初步了解C++程序的编译、连接和运行的过程。 2.掌握和理解C++程序的结构。 二、实验内容 1.使用VC 2.运行一个简单的C++程序 3.编程求出对任意输入的两个整数,求出该两个整数的最大公约数和最小公倍数 三、实验步骤 1.启动VC 或

2.建立工程并输入以下程序 #include using namespace std; void main() { int i(1), sum(0); do { sum+=i; i++; }while(i<=10); cout<<"sum="<

3.保存文件、运行程序、退出VC程序、打开已经存在的文件 4.编程求出对任意输入的两个整数,求出该两个整数的最大公约数和最小公倍数编写以下代码: #include using namespace std; void main() { int a,b,c,d,i; cout<<"a="; cin>>a; cout<<"b="; cin>>b; for(i=1;i<=a && i<=b;i++) if(a%i==0 && b%i==0) c=i; for(i=a*b;i>=a && i>=b;i--) if(i%a==0 && i%b==0) d=i; cout<<"a和b的最大公约数为"<

java面向对象编程实验报告

java面向对象编程实验报告 篇一:java面向对象编程实验报告 信息工程学院 Java程序设计实验/实习报告 学院:信息工程学院班级:信息112 姓名:吴连梅学号:XX013305 成绩:A 实验二面向对象编程 1.实验目的 (1)掌握类与对象基本知识; (2)Java中的继承机制及包(package)、接口(interface)等的设计方法; (3)掌握static、this、super等关键字的使用; (4)掌握Java中两种比较器的用法。 2.实验内容 实验题 1 定义一个类Book,包含两个属性:一个是private的String类型的属性title、一个是private的float类型的属性listPrice,封装这两个属性的四个方法setTitle()和getTitle()、setListPrice( )和geListPrice ()。 基本要求: (1)设计类Book及类BookManagement,在类BookManagement中输出Book类的对象的两个private属性;

(2)重写父类的toString()方法,实现Book类实例的两个属性的输出。 实验过程: 新建工程后,在工程下面建立一个包Book,在包下再建立一个Book类,类中包含两个属性,一个是private的String类型的属性title、一个是private的float类型的属性listPrice,之后是封装这两个属性的四个方法,用快捷键Alt+Shift+S选择gennerate Getters and Setters,再实验报告的内容与格式按任课教师的要求书写。 然后就是重写父类的toString()方法,用快捷键Alt+Shift+S选择gennerate toString,快捷重写。 这段程序写完是这样的: 接下来便是BookManagement类,在包book下新建一个类BookManagement, 写完的程序是这样的: BookManagement类中创建了书的对象,在主方法中调用output函数,赋值,输出。程序写完后,将其存盘,再进行运行,得出的结果如下: 实验题2 有两个类:MobileManagement和Mobile,分别描述如图 3.4所示两部手机名称及价格,类MobileManagemen(本文来自:小草范文网:java面向对象编程实验报告)t在包,而Mobile在包

《面向对象程序设计》实验报告[一]

. 计算机科学与工程学院《面向对象程序设计》实验报告[一]专业班级2017数字媒体技术01实验地点J411 学生学号1705121411 指导教师陈艳 学生姓名黄浩博实验时间 实验项目结构化程序设计(4学时) 实验类别基础性()设计性(√)综合性()其它() 实验目的及要求1.熟悉VC++集成开发环境; 2.熟练应用C++的输入/输出、流程控制、函数、结构等; 3.熟练应用STL常用算法及常见容器; 4.综合应用结构化程序设计思想和方法解决常见问题; 5.完成实验内容,调试通过后将完整代码及运行截图粘贴到实验结果对应的题号下面; 6.对本次实验进行总结(遇到的问题,可行的解决方案,收获,体会等等) 7.完成实验报告后,以学号+姓名+实验1(.doc或.docx)为名上传到ftp://218.199.185.223/student/上传作业/陈艳/面向对象程序设计下对应班级及实验项目文件夹中 成绩评定表 类别评分标准分值得分合计上机表现 积极出勤、遵守纪律 主动完成设计任务 30分

题目一: #include using namespace std; void diamond(int n,char c1,char c2) { int i,j; for (i=1;i<=n;i++){ cout<<"\n\t"; for (j=1;j<=n-i;j++) cout<0;i--){ cout<<"\n\t"; for (j=1;j<=n-i;j++) cout< #include using namespace std; void scan(vector &a,int ); int search(vector &a,vector &b,int); void print(const vector &b,int); int main(){ int n,m; cout<<"How much numbers will you enter:"; cin>>n; vector a(n),b(n); scan(a,n); m=search(a,b,n); print(b,m+1); cin.get(); cin.get(); return 0; } void scan(vector &a,int n){

java实验报告心得体会

java实验报告心得体会 联合大学信息学院 “面向对象程序设计”课 程上机实验报告 题目: JAVA上机实验心得体会 姓名(学号):专业:计算机科学与技术 编制时间: xx年12月19日 版本: 1.0.0 指导教师:联合大学-信息学院编制 实验1 熟悉Java运行环境 实验目的:熟悉JDK环境和操作,编写简单的Java应用程序。

心得体会:在该实验中,我碰到的问题是JDK环境变量的设置。解决方法是通过查阅资料书和网上搜索相关解决方法及同学的有力 帮助。 实验2 选择语句练习 实验目的:正确理解并能够熟练操作和使用Java的if和switch 语句。 心得体会:我个人感觉有了C的编程基础,if和switch这些简单的流程控制语句运用起来比较轻松,实现简单的逻辑运算也跟C非常相近,所以上手比较快。但是在这次程序中,首次涉及到了java 程序的数据输入,与C区别很大。但经过老师的讲解和查阅相关资料,基本明白相关的使用规则和注意事项。在第二个小题中还涉及到了charAt()方法,经查阅JDK文档,知道charAt()方法返回一个位于提供给它的参数索引处的字符,如: str.chatAt(0)检索str中的第一个字符,str.charAt(str.length()-1)检索最后一个字符。我运用此方法解决了比较字符串间首字母异同的问题。 实验3 迭代练习

实验目的:正确理解并能够熟练操作和使用Java的for、while、do..while语句。心得体会:在该实验中,我学会了为具体操作选 择最合适的循环语句及for、while、do..while语句的相互转换使用。最重要的是,明白了JAVA程序中,定义方法中的局部变量时一定要 赋初始值,否则编译不能通过会报错;但类中的成员变量则不一定需要。如我在实验3main()方法定义的整型局部变量mand,当不初始化则不能通过编译。原因是局部变量不能有JVM自动赋给相关的默认值,而成员变量可以。 实验4 方法的实现练习 实验目的:声明、定义和调用方法,理解实参和形参的含义。 心得体会:在该实验中,我掌握如何写方法、调用方法,并掌握 如何向方法中传递信息和从方法中返回信息。方法声明为非void(构造方法除外)则需要用return语句返回一个相应类型的返回值。 实验5 简单类型数组练习 实验目的:学习创建简单类型的数组,并能用循环语句处理数组。

《面向对象程序设计》实验报告(一)1到100素数

《面向对象程序设计》实验报告(一) 姓名江琛学号11 班级计本二班 实验地点软件实验室2 指导教师丁德武实验时间2012-2-27 (注:一到五条在实验预习时填写,六、七条在实验当中或之后填写) 一、实验项目名称:熟悉C++程序的运行环境 二、实验目的及要求 目的: 1.了解和使用Visual C++ 6.0的集成开发环境。 2.熟悉Visual C++ 6.0环境的基本命令和功能键,熟悉常用的菜单命令。 3.学习使用Visual C++ 6.0环境的帮助。 4.学会完整的C++程序开发过程(编辑、编译、连接、调试、运行、查看结果)。 要求: 熟悉VC++上机环境,通过简单的输入输出程序,掌握利用Visual C++ 6.0进行面向对象程序设计的基本步骤。 三、实验环境及要求:多媒体计算机一台 Windows XP操作系统 Visual C++ 6.0 四。试验原理及步奏 原理:(for循环的嵌套) #include #include "math.h" void main () { int m,i,j,n=0; for(i=1;i<=100;i++) { m=sqrt(i); for(j=2;j<=m;j++) if(i%j==0) break; if(j>m+1) { printf("%5d ",i); n=n+1; } } if(n%10==0) printf("\n");

} 五、实验注意事项: 1.注意到标点符号,不要遗漏!注意程序的格式等细节。2.熟练掌握for循环的结构!尽量使程序简洁! 3.使用数学函数时,应该在该资源文件中使用以下命令行:#include <.math.h>或#include "math.h" 六、实验数据记录:

面向对象程序设计(java)实验报告

学生学号实验课成绩 许昌学院 学生实验报告书 实验课程名称面向对象程序设计(Java) 开课学院信息工程学院 指导老师姓名杨月华 学生姓名郑强 学生专业班级 14网络安全本1 2014-2015学年第2学期

实验名称实验一第一个Java程序实验成绩 实验者郑强专业班级14网络安全本1 指导教师杨月华实验日期2015.03.17 一、实验目的 1. 掌握Java开发环境的搭建和环境变量配置方法。 2. 熟悉简单的Java程序的编写、编译和运行过程。 二、实验环境 硬件:安装有Windows XP/7操作系统的电脑一台 软件:JDK1.7,Notepad++ 三、实验内容 1. 安装JDK7,配置环境变量,搭建Java开发环境。 2. 使用文本编辑工具(记事本或Notepad++)编写一个Java程序,在命令行窗口编译、运行,输出字符串“你好,我是×××,这是我的一个Java程序!”,按照题目编写程序并给出运行结果截图。 public class Helloworld{ public static void main(String[] args){ System.out.println("你好,我是JOHN,这是我的一个java程序"); } }

实验名称实验二变量的定义和转换实验成绩 实验者专业班级14网络安全本1 指导教师杨月华实验日期 一、实验目的 1. 了解变量的定义方式和如何为不同类型的变量赋值。 2. 了解变量进行自动类型转换的条件。 3. 掌握不同数据类型间的强制类型转换。 二、实验环境 硬件:安装有Windows XP/7操作系统的电脑一台 软件:JDK1.7,文本编辑工具 三、实验内容 1. 编写一个类test1,在test1的main()方法中,针对8种基本数据类型,分别定义变量并赋值,然后使用println语句分别打印每个变量的值,将程序运行结果截图。 2. 编写一个类test2,在类test2中,定义byte类型的变量a,int类型的变量b,float 类型的变量f,double类型的变量d,其中,变量a的初始值为10,变量f的初始值为12.5f。首先将变量a的值赋给变量b,变量a、b、f相加后的结果值赋给变量d,然后使用println语句打印出变量b和变量d的值。解释程序中存在的数据类型自动转换,将程序运行结果截图。 3. 编写一个类test3,在test3中的main()方法中定义一个int类型的变量i和byte 类型的变量b,并将变量i的值赋给变量b,使用println语句打印出变量b的值,将程序运行结果截图。

面向对象分析与设计UML实验报告

《面向对象分析与设计UML》 实验报告 实验及作业一 一、实验目的 了解软件工程等基础知识,为后续的统一建模语言UML知识的学习做好准备工作。 二、实验设备与环境 装有Visio、RationalRose的计算机。 三、实验内容 1、复习阐述“软件工程开发模型”的相关概念,并分析各种模型的优缺点,写成实验报告。 2、熟悉UML软件设计工具Visio、Rational Rose的安装及环境 四、实验过程及结果 经过上网搜索相关信息进行了解软件工程开发模型的相关概念与优缺点 一,什么是软件工程概念模型 模型就是抽象,就是有意识地忽略事物的某些特征。抽象带来的好处是能够反映模型中元素之间的关系,清晰把握大局。 概念模型是模型的一种,简单说就是抽象程度极高的一种模型。 软件工程概念模型是对软件工程领域进行抽象描述的模型,它能够使我们对软件工程有一个完整把握。 二,软件工程开发模型的种类以及优缺点 瀑布模型由W.Royce于1970年首先提出。根据软件工程生存周期各个阶段的任务,瀑布模型从可行性研究开始,逐步进行阶段性变换,直至通过确认测试并得到用户确认的软件产品为止。瀑布模型上一阶段的变换结果是下一阶段变换的输入,相邻两个阶段具有因果关系,紧密联系。一个阶段的失误将蔓延到以后的各个阶段。为了保障软件开发的正确性,每一阶段任务完成后,都必须对它的阶段性产品进行评审,确认之后再转入下一阶段的工作。评审过程发现错误和疏漏后,应该及时反馈到前面的有关阶段修正错误或弥补疏漏,然后再

重复前面的工作,直至某一阶段通过评审后再进入下一阶段。瀑布模型如图1.1所示。 瀑布模型有许多优点,如可强迫开发人员采用规范的方法;严格规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证等。 但瀑布模型也存在缺点,其主要表现在:①在软件开发的初始阶段指明软件系统的全部需求是困难的,有时甚至是不现实的。而瀑布模型在需求分析阶段要求客户和系统分析员必须做到这一点才能开展后续阶段的工作。②确定需求后,用户和软件项目负责人要等相当长的时间才能得到一份软件的最初版本。如果用户对这个软件提出比较大的修改意见,那么整个软件项目将会蒙受巨大的人力、财力和时间方面的损失。 原型模型又称演化模型,主要是针对事先不能完整定义需求的软件项目开发而言的。许多软件开发项目由于人们对软件需求的认识模糊,很难一次开发成功,返工再开发难以避免。因此,人们对需开发的软件给出基本需求,作第一次试验开发,其目标仅在于探索可行性和弄清需求,取得有效的反馈信息,以支持软件的最终设计和实现。通常我们把第一次实验性开发出的软件称为原型(prototype)。这种开发模型可以减少由于需求不明给开发工作带来的风险,有较好的效果。相对瀑布模型来说,原型模型更符合人类认识真理的过程和思维,是目前较流行的一种实用的软件开发方法。原型模型如图4.2所示。 原型化模型有丢弃型、样品型和渐增式演化型三种形式。丢弃型是指原型开发后,已获得了更为清晰的需求反馈信息,原型无需保留而丢弃,开发的原型仅以演示为目的,这往往用在软件的用户界面的开发上。样品型是指原型规模与最终产品相似,只是原型仅供研究用。渐增式演化型是指原型作为最终产品的一部分,它可以满足用户的部分需求,经用户试用后提出精华系统、增强系统能力的需求,开发人员根据反馈信息,实施开发的迭代过程。如果在一次迭代过程中,有些需求还不能满足用户的需求,可以在下一迭代过程中予以修正,整个实现后软件才可最终交付使用。 螺旋模型是瀑布模型与原型模型相结合,并增加两者所忽略的风险分析而产生的一种模型,该模型通常用来指导大型软件项目的开发,它将开发划分为制定计划、风险计划、实施开发和客户评估四类活动。沿着螺旋线每转一圈,表示开发出一个更完善的新的软件版本。如果开发风险过大,开发机构和客户无法接受,项目有可能就此中止;多数情况下,会沿着螺旋线继续下去,自内向外逐步延伸,最终得到满意的软件产品。该模型是由TRW公司的B.Boehm于1988年提出的。 图1.3显示了螺旋模型的原理,沿着螺旋线旋转,在笛卡儿坐标的四个像限上分别表达

相关文档
最新文档