You are on page 1of 2

Class Application

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AppDevLab
{
class Application
{
public Application ()
{
rectangleMethod();
Console.WriteLine("---------------------");
circleMethod();
}
public static void rectangleMethod ()
{
Rectangle rec = new Rectangle();
Rectangle clon = rec.clone() as Rectangle;
Console.WriteLine("RECTANGLE\n");
Console.WriteLine("Width: " + rec.getWidth());
Console.WriteLine("Height: {0}\n---------------------" ,rec.getHeight());
Console.WriteLine("RECTANGLE CLONE\n");
Console.WriteLine("Width: " + clon.getWidth());
Console.WriteLine("Height: " + clon.getHeight());
}
public static void circleMethod ()
{
Circle cir = new Circle();
Circle clon = cir.clone() as Circle;
Console.WriteLine("CIRCLE\n");
Console.WriteLine("Radius: {0}\n---------------------" ,cir.getRadius());
Console.WriteLine("CIRCLE CLONE\n");
Console.WriteLine("Radius: {0}\n---------------------" ,clon.getRadius());
}
static void Main(string[] args)
{
Console.WriteLine("--------SHAPES-------");
new Application();
Console.ReadLine();

}
}
}

Class Shape
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AppDevLab
{
abstract class Shape
{
private int x;
private int y;
private string color;

public abstract Shape clone();


}
}

Class Circle
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AppDevLab
{
class Circle : Shape
{
private int radius;

public Circle ()
{
this.radius = 10;
}

public int getRadius()


{
return radius;
}

public override Shape clone()


{
return (Shape)this.MemberwiseClone();
}

}
}
Class Rectangle

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AppDevLab
{
class Rectangle : Shape
{
private int width;
private int height;

public Rectangle ()
{
this.width = 20;
this.height = 10;
}

public int getWidth ()


{
return width;
}

public int getHeight()


{
return height;
}

public override Shape clone()


{
return (Shape)this.MemberwiseClone();
}
}
}

Output:

You might also like