//此实例主要验证多个接口在类的中实现,及如果不覆盖object类的中tostring()方法,查看输出结果
//感觉这个接口的定义有点多余,没有什么用处,直接定义类不是更好吗?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace _5_8_5jiekoushili
{
//定义一个求面积的接口
interface GetMianJi
{
double MianJi
{
get;
}
}
//定义一个求体积的接口
interface GetTiJi
{
double TiJi
{
get;
}
}
//声明一个圆面积的类
class YuanMianJi:GetMianJi
{
public YuanMianJi(double _bJing)
{
bJing = _bJing;
}
//声明一个圆的半径的变量
private double bJing;
public double MianJi
{
get
{
return (3.14159 * bJing * bJing);
}
}
//重写object类的tostring()方法
public override string ToString()
{
return ("圆的面积是:" + MianJi);
}
}
//声明一个球面积和球体积的类
class Qiu:GetMianJi ,GetTiJi
{
private double bJing;
public Qiu(double _bJing)
{
bJing = _bJing;
}
public double MianJi
{
get
{
return (3.14159 * bJing * bJing * 4);
}
}
public double TiJi
{
get
{
return (3.14159 * bJing * bJing * bJing * 4 / 3);
}
}
public override string ToString()
{
return ("球的面积:" + MianJi + ",球的体积:" + TiJi);
}
}
class Program
{
static void Main(string[] args)
{
YuanMianJi Y = new YuanMianJi(14.2);
Qiu Q = new Qiu(16.8);
Console.WriteLine(Y);
Console.WriteLine(Q);
Console.ReadLine();
}
}
}
原码附上,小弟在学接口这一块,感觉上面代码中定义的接口根本没有用,完全可以定义两个类来实现。如下代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace _5_8_5jiekoushili
{
//声明一个圆面积的类
class YuanMianJi //:GetMianJi
{
public YuanMianJi(double _bJing)
{
bJing = _bJing;
}
//声明一个圆的半径的变量
private double bJing;
public double MianJi
{
get
{
return (3.14159 * bJing * bJing);
}
}
//重写object类的tostring()方法
public override string ToString()
{
return ("圆的面积是:" + MianJi);
}
}
//声明一个球面积和球体积的类
class Qiu //:GetMianJi ,GetTiJi
{
private double bJing;
public Qiu(double _bJing)
{
bJing = _bJing;
}
public double MianJi
{
get
{
return (3.14159 * bJing * bJing * 4);
}
}
public double TiJi
{
get
{
return (3.14159 * bJing * bJing * bJing * 4 / 3);
}
}
public override string ToString()
{
return ("球的面积:" + MianJi + ",球的体积:" + TiJi);
}
}
class Program
{
static void Main(string[] args)
{
YuanMianJi Y = new YuanMianJi(14.2);
Qiu Q = new Qiu(16.8);
Console.WriteLine(Y);
Console.WriteLine(Q);
Console.ReadLine();
}
}
}求各位帮忙解释一下,接口在第一段代码中的作用,这样写代码有什么妙处,为什么不直接用第二段代码实现呢?
//感觉这个接口的定义有点多余,没有什么用处,直接定义类不是更好吗?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace _5_8_5jiekoushili
{
//定义一个求面积的接口
interface GetMianJi
{
double MianJi
{
get;
}
}
//定义一个求体积的接口
interface GetTiJi
{
double TiJi
{
get;
}
}
//声明一个圆面积的类
class YuanMianJi:GetMianJi
{
public YuanMianJi(double _bJing)
{
bJing = _bJing;
}
//声明一个圆的半径的变量
private double bJing;
public double MianJi
{
get
{
return (3.14159 * bJing * bJing);
}
}
//重写object类的tostring()方法
public override string ToString()
{
return ("圆的面积是:" + MianJi);
}
}
//声明一个球面积和球体积的类
class Qiu:GetMianJi ,GetTiJi
{
private double bJing;
public Qiu(double _bJing)
{
bJing = _bJing;
}
public double MianJi
{
get
{
return (3.14159 * bJing * bJing * 4);
}
}
public double TiJi
{
get
{
return (3.14159 * bJing * bJing * bJing * 4 / 3);
}
}
public override string ToString()
{
return ("球的面积:" + MianJi + ",球的体积:" + TiJi);
}
}
class Program
{
static void Main(string[] args)
{
YuanMianJi Y = new YuanMianJi(14.2);
Qiu Q = new Qiu(16.8);
Console.WriteLine(Y);
Console.WriteLine(Q);
Console.ReadLine();
}
}
}
原码附上,小弟在学接口这一块,感觉上面代码中定义的接口根本没有用,完全可以定义两个类来实现。如下代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace _5_8_5jiekoushili
{
//声明一个圆面积的类
class YuanMianJi //:GetMianJi
{
public YuanMianJi(double _bJing)
{
bJing = _bJing;
}
//声明一个圆的半径的变量
private double bJing;
public double MianJi
{
get
{
return (3.14159 * bJing * bJing);
}
}
//重写object类的tostring()方法
public override string ToString()
{
return ("圆的面积是:" + MianJi);
}
}
//声明一个球面积和球体积的类
class Qiu //:GetMianJi ,GetTiJi
{
private double bJing;
public Qiu(double _bJing)
{
bJing = _bJing;
}
public double MianJi
{
get
{
return (3.14159 * bJing * bJing * 4);
}
}
public double TiJi
{
get
{
return (3.14159 * bJing * bJing * bJing * 4 / 3);
}
}
public override string ToString()
{
return ("球的面积:" + MianJi + ",球的体积:" + TiJi);
}
}
class Program
{
static void Main(string[] args)
{
YuanMianJi Y = new YuanMianJi(14.2);
Qiu Q = new Qiu(16.8);
Console.WriteLine(Y);
Console.WriteLine(Q);
Console.ReadLine();
}
}
}求各位帮忙解释一下,接口在第一段代码中的作用,这样写代码有什么妙处,为什么不直接用第二段代码实现呢?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货