您的位置:首页 > 编程语言 > C#

C#源代码—演示抽象类与抽象属性的使用,命名空间的使用

2016-01-13 11:54 513 查看
【实例4-3】演示抽象类与抽象属性的使用

using System;
public abstract class Shape      //表示“形状”的抽象类型
{
    private string m_id;         //定义形状的ID,一个私有字段
    //声明构造函数,用来设置属性Id
    public Shape(string s) 
    {
        Id = s;
    }
    public string Id             //定义属性,用来操作私有字段id
    {
        get
        {
            return m_id;
        }
        set
        {
            m_id = value;
        }
    }
// 定义一个只读的抽象属性 - 表示形状的面积
    public abstract double Area
    {
        get;
    }
    //重载从Ojbect类继承来的方法
    public override string ToString()
    {
        return Id + " 面积 = " + string.Format("{0:F2}", Area);
    }
}
public class Square : Shape           //正方形,从抽象类Shape派生
{
    private int m_side;               //正方形的边长
    //声明构造函数,联合基类的构造函数对字段成员进行初始化
    public Square(int side, string id)
        : base(id)
    {
        m_side = side;
    }
 //重载继承来的抽象属性,得正方形的面积
    public override double Area
    {
        get
        {
            return m_side * m_side;
        }
    }
}
class TestClass
{
    static void Main()
    {
        //创建一个边长为5的正方形对象
        Square s = new Square(5, "正方形");
        string result = s.ToString();
        Console.WriteLine(result);
    }
}


【实例4-5】演示命名空间的使用

//files.cs
using System;              //引用.Net Framework类库
namespace Lfq.Sales        //声明自定义的命名空间
{
	public class Customer   //声明顾客类
	{
		public void Answer()
		{
			Console.WriteLine("我是一个顾客!");
		}
	}
}
//file2.cs
using Lfq.Sales;          //引用已定义的命名空间
namespace Lfq. Designs   //声明自定义的命名空间
{
	public class Designer  //声明设计师类
	{
   		 static void Main()
		{   //创建对象,调用其方法成员
			Customer c = new Customer();
			c.Answer();
		}
	}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: