文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>抽象类

抽象类

时间:2010-10-08  来源:草珊瑚

抽象类>什么是抽象类

抽象类的声明中包含abstract关键字。只要有一个方法具有abstract修饰即声明为抽象方法,那么这个类就是抽象类。

抽象类,就是提供类的定义,不提供类的具体实现细节(可实现部分细节,但不全实现)。抽象类的实现交由派生类来完成。

抽象类>声明抽象类

代码 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    /// <summary>
    /// 购买书籍的抽象类
    /// </summary>
    public abstract class BuyBookOperate
    {
        public abstract void BuyBook();
        //书店
        public abstract string BookShop
        { get; set; }
        //书名
        public abstract string BookName
        { get; set; }
        //支付行为
        public void PayMoney()
        {
            Console.WriteLine("支付款项正在进行中......");
        }
        //总金额
        private int _totalmoney;
        public int TotalMoney
        {
            get
            {
                return _totalmoney;
            }
            set
            {
                _totalmoney = value;
                if (_totalmoney > 100)
                {
                    Console.WriteLine("您购买的书籍价格超过了100块钱");
                }
            }
        }
    }
}


抽象类>实现抽象类

代码 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    /// <summary>
    /// 抽象类的实现。
    /// </summary>
    public class ConcreteBuyBook : BuyBookOperate
    {
        //实现抽象方法
        public override void BuyBook()
        {
            BookShop = "新华书店";
            BookName = "C#的书籍";
            TotalMoney = 101;
            PayMoney();
        }

        private string _bookshop;
        //实现抽象属性
        public override string BookShop
        {
            get
            {
                return _bookshop;
            }
            set
            {
                _bookshop = value;
            }
        }
        private string _bookname;
        //实现抽象属性。
        public override string BookName
        {
            get
            {
                return _bookname;
            }
            set
            {
                _bookname = value;
            }
        }
    }
}


运行它

代码 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            ConcreteBuyBook cb1 = new ConcreteBuyBook();
            Console.WriteLine(cb1.ToString() + "类的输出结果为:");
            Buybook(cb1);
        }
        /// <summary>
        /// 买书的动作,传递抽象类的实现.
        /// </summary>
        /// <param name="bop"></param>
        static void Buybook(BuyBookOperate bop)
        {
            //调用在抽象类中定义的BuyBook方法
            bop.BuyBook();
        }
    }

   
}


 

 

 

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载