在C#4.0(或更早版本中,如果可以完成),父类如何将其自身引用传递给子类。例如:传递子类的自我类引用
class Book
{
public string bookname = "a";
public static List<Page> pages = new List<Page>();
static void Main(string[] args)
{
Page pageone = new Page("one");
pages.Add(new Page("one"));
}
}
public class Page
{
Book book;
public Page(string pagetitle)
{
Console.WriteLine(pagetitle);
Console.WriteLine("I'm from bookname :?");
}
}
如何让页面识别出哪本书在?我试图在构造函数中传递Book类,但不知道如何。
C#和大多数面向对象的语言,我知道有没有父类和子类的概念。毫不奇怪,没有内置的机制可以将对父实例的引用传递给子实例。 –
@JohnSaunders实际上,Java内部类正是那种关系模型。尽管你可以很容易地用C#修复它 - 毕竟只是一点糖语法。 – Voo
@Voo,这就是我来自的地方......但C#嵌套了类,而不是内部类。见http://blogs.msdn.com/b/oldnewthing/archive/2006/08/01/685248.aspx – Eugene