题目
用C#中方法的重载,求圆面积、长方形面积、三角形面积.
提问时间:2020-12-08
答案
的思路去设计程序:
1,定义一个抽象类或者接口,表示图形,其中包含2个方法:求面积和求周长
2,定义具体类实现这个接口或继承这个抽象类,实现其中定义的函数.
3,调用的时候,定义这个接口类型或抽象类对象,然后根据实例化的不同子类,来调用不同的方法,——即类的多态性.
比如,我下面用接口来实现:
interface IDraw
{
float Area();
float Round();
}
class Square :IDraw
{
private float _x;
public Square(float x)
public float Area()
public float Round()
}
class Rectangle :IDraw
{
private float _x,_y;
public Rectangle(float x,float y)
public float Area()
public float Round()
}
class Triangle :IDraw
{
// 类似上面的定义
}
void Main()
{
IDraw draw;
draw = new Square(5);
draw.Area(); // 计算正方形面积
draw = new Rectangle(5,10);
draw.Area(); // 计算长方形面积
draw = new Triangle(5,10);
draw.Area(); // 计算三角形面积
}
多态性的好处很明显,方便以后扩充功能,且不影响原有的功能,你再加入椭圆形,菱形等,都只要定义新的类实现IDraw即可.
在调用方也实现了统一的接口,不管什么图形,都是用Area()和Round()去算面积和周长.
另外,如果再进一步考虑增强调用方的可维护性,可以使用设计模式IOC/DI,也就是控制反转/依赖注入,在配置文件中配置当前需要实例化的类,然后使用反射加载对应的类,实例化对象,并调用其方法.
关于涉及模式DI,请参考martin.fowler的文章
1,定义一个抽象类或者接口,表示图形,其中包含2个方法:求面积和求周长
2,定义具体类实现这个接口或继承这个抽象类,实现其中定义的函数.
3,调用的时候,定义这个接口类型或抽象类对象,然后根据实例化的不同子类,来调用不同的方法,——即类的多态性.
比如,我下面用接口来实现:
interface IDraw
{
float Area();
float Round();
}
class Square :IDraw
{
private float _x;
public Square(float x)
public float Area()
public float Round()
}
class Rectangle :IDraw
{
private float _x,_y;
public Rectangle(float x,float y)
public float Area()
public float Round()
}
class Triangle :IDraw
{
// 类似上面的定义
}
void Main()
{
IDraw draw;
draw = new Square(5);
draw.Area(); // 计算正方形面积
draw = new Rectangle(5,10);
draw.Area(); // 计算长方形面积
draw = new Triangle(5,10);
draw.Area(); // 计算三角形面积
}
多态性的好处很明显,方便以后扩充功能,且不影响原有的功能,你再加入椭圆形,菱形等,都只要定义新的类实现IDraw即可.
在调用方也实现了统一的接口,不管什么图形,都是用Area()和Round()去算面积和周长.
另外,如果再进一步考虑增强调用方的可维护性,可以使用设计模式IOC/DI,也就是控制反转/依赖注入,在配置文件中配置当前需要实例化的类,然后使用反射加载对应的类,实例化对象,并调用其方法.
关于涉及模式DI,请参考martin.fowler的文章
举一反三
已知函数f(x)=x,g(x)=alnx,a∈R.若曲线y=f(x)与曲线y=g(x)相交,且在交点处有相同的切线,求a的值和该切线方程.
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
最新试题
- 1jing(第四声)开头成语,越多越好
- 2某地公交公司推出刷卡月票制,即持有这种月票的乘客通过刷卡扣除每次的车票.某人买了【100】元的这种月票卡,如果此人乘车的次数用m表示,每次乘车的余额用n表示,它们之间的关系如下表:
- 3普通的写法腿和脚的英语单词.
- 4甲,乙两车同时从A,B两地的中点沿相反方向行驶,3小时候,甲车到达A地,乙车;离B地还有42千米.
- 5核舟记中 闭 字和 启 子相对,一启一闭说明了什么
- 6设F(x)是f(x)的一个原函数,则∫e^(-x)f(e^(-x))dx=
- 7已知映射f:A→B=((x,y),x属于R,Y属于R),f:A中的元素(x,y)对应到B中的元素(3x+y-1,x-2y+1)
- 8在A、B两地之间要修一条公路(如图),从A地测得公路的走向是北偏东60度.如果A、B两地同时开工,那么在B地公路按∠α=_度施工,能使公路准确接通.
- 9为中华之崛起而读书 意思
- 10有理数a、b、c、d、在数轴上的位置如图所示,判断下列式子的符号.
热门考点
- 1分数的分母越小,它的分数单位就越小._.(判断对错)
- 2利用因式分解计算:(1−1/22)(1−1/32)(1−1/42)…(1−1/92)(1−1/102).
- 3冬天时的窗花是在玻璃里还是玻璃外?
- 4如果两个球的体积之比为8:27,那么两个球的表面积之比为( ) A.8:27 B.2:3 C.4:9 D.2:9
- 5判断:一个数的倍数一定大于或等于这个数的因数
- 6果园收梨,用小筐,正好装30个,共重540千克.现在把这些梨改为大筐装,每筐比原来多装2千克,需大筐多少个?
- 7月末,甲产品100件,乙产品100件全部完工入库,计算两种产品的单位成本,
- 8she can watch TV和her can watch TV哪个对?
- 9土层厚度、有机质厚度直接影响土壤的什么?
- 10没有人能免于灾难或个人挫折.每个人都要面对灾难或个人挫折.(1)比较