Можно-ли вызвать конструктор класс из другого конструктора этого же класса?
У меня такой код. По договоренности конструкторы не должны принимать null-параметров. Я хочу вызвать из конструктора 'Line(Line obj)' конструктор 'Line(string name, Point AA, Point BB)', но уже после проверки 'object.Equals(obj, null)', как это сделать?
public Line(Line obj) //: this(obj.Name,obj.A, obj.B) - так я и сам могу, но как тогда проверить 'object.Equals(obj, null)'?
{
if (object.Equals(obj, null)) throw new LineException(" Аргумент в конструкторе Line(Line obj) == null");
// this(obj.Name,obj.A, obj.B) - ну вот что-то вроде этого !
LName = obj.LName;
A = obj.A;
B = obj.B;
}
public Line(string name, Point AA, Point BB)
{
if (object.Equals(AA, null)) throw new LineException(" Аргумент 2 в конструкторе Line(string name, Point AA, Point BB) == null");
if (object.Equals(BB, null)) throw new LineException(" Аргумент 3 в конструкторе Line(string name, Point AA, Point BB) == null");
if (AA == BB) throw new LineException(" Нельзя построить линию из двух совпадающих точек !", "Точка A:", AA, "Точка B:", BB);
LName = name;
A = AA;
B = BB;
}