A2Pro THPT Buôn Ma Thuột [2007-2010]

Có một nơi mà chúng ta sẽ không bao giờ quên.. nơi thấm đẫm tình bạn, tình yêu thương thân thiết, nơi gắn bó mãi mãi với những kí ức đẹp nhất của thời học sinh yêu dấu... Nơi đó là đây !

Đăng Nhập

Quên mật khẩu

Latest topics


Decorator Pattern

Share

FR
Silver Dragon
Silver Dragon

Gender : Nam

Posts Posts : 1023 Thanked : 660
Coins Coins : 6192
Tham Gia : 26/08/2008
Birthday : 05/08/1920

Status Status : Sẽ ra sao nếu như, tao là mày và mày là tao ?

code Decorator Pattern

Bài gửi by FR on Fri Oct 10, 2014 11:26 am

A example about Decorator Pattern in C# 04

Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Decorator
{
    public interface IComputer
    {
        string description();
    }
    public class Computer:IComputer
    {
        public Computer()
        {
        }
        public string description()
        {
            return "computer";
        }
    }
    
    public class Disk : IComputer
    {
        IComputer computer;
        public Disk(IComputer c)
        {
            computer = c;
        }
        public string description()
        {
            return computer.description() + " and a disk";
        }
    }
    public class CD : IComputer
    {
        IComputer computer;
        public CD(IComputer c)
        {
            computer = c;
        }
        public string description()
        {
            return computer.description() + " and a CD";
        }
    }

    public class Monitor : IComputer
    {
        IComputer computer;
        public Monitor(IComputer c)
        {
            computer = c;
        }
        public string description()
        {
            return computer.description() + " and a monitor";
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            IComputer c = new Computer();
            Console.WriteLine("You're getting a "+new CD(new CD(new Monitor(new Disk(c)))).description());
        }
    }
}

    Hôm nay: Thu Dec 08, 2016 9:09 pm