C#--第七周实验--任务2--从PhysicalObject中派生出移动物体类MovingObject并实现部分功能
2012-10-19 17:33
543 查看
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称:从PhysicalObject中派生出移动物体类MovingObject * 作 者: 雷恒鑫 * 完成日期: 2012 年10 月18日 * 版 本 号: V1.0 * 对任务及求解方法的描述部分 * 输入描述:在其中创建物体类PhysicalObject,通过其私有字段来存放重量和体积. * 输入描述:通过公有属性来访问其重量、体积、密度,并通过公有方法来判断该物体是否会在水中下沉。 * 输入描述:从PhysicalObject中派生出移动物体类MovingObject,在其中增加物体的速度信息,并实现物体动量和动能的计算。 * 问题描述: * 程序输出: * 程序头部的注释结束 */ using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace seven_week { class Program { static void Main(string[] args) { PhysicalObject ph1 = new PhysicalObject(); ph1.set_weight(50); ph1.set_volume(20); ph1.Calculation_Density(); ph1.panduan(); PhysicalObject ph2 = new PhysicalObject(100, 50); ph2.panduan(); MovingObject ph3 = new MovingObject (100,50,200); Console.WriteLine("该物体的动量为{0}",ph3.energy_motion()); Console.WriteLine("该物体的动能为{0}",ph3.momentum()); Console.ReadKey(); } } class PhysicalObject { private double volume; private double weight; private double Density; public PhysicalObject() { volume = 0; weight = 0; Density = 0; } public PhysicalObject(double volume1, double weight1) { volume = volume1; weight = weight1; Density = weight / volume; } public void set_volume(double volume) { this.volume = volume; } public void set_weight(double weight) { this.weight = weight; } public void set_Density(double Density) { this.Density = Density; } public double get_volume() { return volume; } public double get_weight() { return weight; } public double get_Density() { return Density; } public void Calculation_Density() { Density = weight / volume; } public void panduan() { if (Density > 1) { Console.WriteLine("物体的重量为{0}克,体积为{1}立方厘米,密度为{2}克/立方厘米,此物体会在水中下沉。", volume, weight, Density); } else { Console.WriteLine("物体的重量为{0}克,体积为{1}立方厘米,密度为{2}克/立方厘米,此物体不会在水中下沉。", volume, weight, Density); } } } class MovingObject : PhysicalObject { private double speech; public MovingObject(double volume1, double weight1, double speech):base(volume1, weight1) { this.speech = speech; } public double energy_motion() { return ((this.get_weight()*this.speech*this.speech)/2); } public double momentum() { return (this.get_weight()*this.speech); } } }
运行结果:
相关文章推荐
- C#--第七周实验--任务1--创建物体类PhysicalObject,通过其私有字段来存放重量和体积,通过公有方法判断该物体是否会在水中下沉
- C#--第四周实验--任务4--定义一个描述坐标点的CPoint类,派生出直线类Cline,在派生出矩形类CRect,实现一些功能。
- C#--第四周实验--任务3--定义一个人员类Cperson,在此基础上派生出学生类CStudent和教师类CTeacher,实现输入输出功能的成员函数。
- Android基于widget组件实现物体移动/控件拖动功能示例
- 原创]unity3D学习【功能实现】之一:坐标的转换以及物体的移动
- JAVA--第五周实验--任务2--封装一类梯形形对象Triangle,并实现一些求周长求面积的功能。
- C#--第九周实验--任务2--定义一个静态成员方法,该方法实现字符串反转。
- C#之移动无标题栏窗体功能的实现!...
- Winform(C#.NET)自动更新组件的使用及部分功能实现(一点改进功能)
- 接口实现分离(漫谈C#和swift的部分实现拓展功能)
- 实验任务7 实现登录界面的账号和密码的存储功能
- JAVA--第五周实验--任务3--封装一类圆形对象Triangle,并实现一些求周长求面积的功能。
- C#中用鼠标移动页面功能的实现
- C#--第11周实验--任务3--设计一个窗体,窗体上有两个文本框,一个按钮,2个单选按钮--实现单击按钮后,根据单选按钮,将对应文本框中内容显示在标签。
- C#中用鼠标移动页面功能的实现
- Winform(C#.NET)自动更新组件的使用及部分功能实现
- 第十周实验报告(任务一)【由注释内容实现函数的功能】
- c#打印预览控件中实现用鼠标移动页面功能代码分享
- C#--第七周实验--任务5--编写一个控制台应用,实现输出一个从1开始到511*511长度的随机数序列
- C#:光标通过上下键或者enter键从一个textBox移动到另一个textBox或实现按键click功能