示例#1
0
        public void Main()
        {
            var square = new Square(5);

            var drawer = new SquareDrawer(square);

            drawer.Draw();
        }
示例#2
0
        public void Main()
        {
            var shapes = new IShape[] { new Square(5), new Circle(1) /*, ...*/ };

            foreach (IShape shape in shapes)
            {
                if (shape is Square)
                {
                    var drawer = new SquareDrawer((Square)shape);
                    drawer.Draw();
                }
                else if (shape is Circle)
                {
                    var drawer = new CircleDrawer((Circle)shape);
                    drawer.Draw();
                }
                // ...
            }
        }