public class Test1
{
public int Q1 { get; set; }
public string Q2 { get; set; }
}
public class Test2 : Test1
{
public Test2(Test1 Value)
{
Q1 = Value.Q1;
Q2 = Value.Q2;
//Does this way of writing is getting very long and difficult
}
}
public class Test2 : Test1
{
public Test2(Test1 Value)
{
base = Value;
//In this way a short and easy ways
}
}
public Test1 ExampleTest()
{
return new Test1();
}
public void Example()
{
Test2 t = new Test2();
t = ExampleTest();
}
我直接赋予类继承如何获得?
答案 0 :(得分:1)
两者都错了 -
首先,您在派生类构造函数中初始化基类成员,这是一种不好的做法。这里的问题是你必须在这里使用inheritence,让基类通过基类构造函数初始化继承的成员。
在第二阶段,您首先创建基类对象,然后传递它以创建派生的对象。它是内存的浪费,因为我们不需要基类对象来实例化派生对象。此外,这种方法在抽象类的情况下不起作用。