'Circle" недоступен из-за его уровня защиты
Есть такой фрагмент кода:
using System;
using ShapeAreaCalculation;
namespace TestMyLibs
{
class Program
{
static void Main(string[] args)
{
Shape myShape = new Circle(10);
}
}
}
В проекте подключена библиотека с абстрактным классом Shape и дочкой Circle Shape:
namespace ShapeAreaCalculation
{
abstract class Shape
{
public abstract string ShapeName { get; set; }
public abstract double ShapeArea { get; }
public abstract bool ShapeCheck { get; }
}
}
Circle:
using System;
namespace ShapeAreaCalculation
{
partial class Circle:Shape
{
public override string ShapeName { get; set; }
public double CircleRadius { get; set; }
public override bool ShapeCheck
{
get
{
if (CircleRadius > 0)
{
return true;
}
else
{
throw new Exception("Warning! Radius must be positive!\nPlease check input parameters");
}
}
}
public override double ShapeArea
{
get
{
if (ShapeCheck)
{
double circleArea = Math.PI * Math.Pow(CircleRadius, 2);
return Math.Round(circleArea, 4);
}
else
{
throw new Exception("Warning! Radius must be positive!\nPlease check input parameters");
}
}
}
public Circle(string ShapeName, double CircleRadius)
{
this.CircleRadius = CircleRadius;
this.ShapeName = ShapeName;
}
public Circle(double CircleRadius)
{
this.CircleRadius = CircleRadius;
ShapeName = "NoName";
}
}
}
В общем, подключил длл, везде все паблик, почему ругается "CS0122'Circle" недоступен из-за его уровня защиты". Облазил весь гугл, не могу найти(или понять что нашел) ответ. Заранее благодарен