using System;class File
{
}class CommaDelimitedFile
{
public CommaDelimitedFile(string file)
{
Console.WriteLine("Constructed with a file");
} public CommaDelimitedFile(File file)
{
Console.WriteLine("Constructed with a file object");
} public CommaDelimitedFile()
: this("Default file")
{
}
}class OverLoadConstructor
{
static void Main(string[] args)
{
File file = new File();
CommaDelimitedFile file2 = new CommaDelimitedFile(file);
CommaDelimitedFile file3 = new CommaDelimitedFile("Some file names");
CommaDelimitedFile file4 = new CommaDelimitedFile();
}
}//Constructed with a file object
//Constructed with a file
//Constructed with a file按照我自己的理解当执行第3个构造器的时候是调用了第一个构造器,那么我应该如何重新设计这个构造器让他调用的是第二个构造器呢?也就是让他的输出变成
//Constructed with a file object
//Constructed with a file
//Constructed with a file object补充:public CommaDelimitedFile()
: this("Default file")
{
}
这句不怎么理解,谁能给我解释清楚点,我新学,概念的问题搞不清.
{
}class CommaDelimitedFile
{
public CommaDelimitedFile(string file)
{
Console.WriteLine("Constructed with a file");
} public CommaDelimitedFile(File file)
{
Console.WriteLine("Constructed with a file object");
} public CommaDelimitedFile()
: this("Default file")
{
}
}class OverLoadConstructor
{
static void Main(string[] args)
{
File file = new File();
CommaDelimitedFile file2 = new CommaDelimitedFile(file);
CommaDelimitedFile file3 = new CommaDelimitedFile("Some file names");
CommaDelimitedFile file4 = new CommaDelimitedFile();
}
}//Constructed with a file object
//Constructed with a file
//Constructed with a file按照我自己的理解当执行第3个构造器的时候是调用了第一个构造器,那么我应该如何重新设计这个构造器让他调用的是第二个构造器呢?也就是让他的输出变成
//Constructed with a file object
//Constructed with a file
//Constructed with a file object补充:public CommaDelimitedFile()
: this("Default file")
{
}
这句不怎么理解,谁能给我解释清楚点,我新学,概念的问题搞不清.
: this(new File(...))
{
}
class Test
{
}
class File
{
} class CommaDelimitedFile
{
public CommaDelimitedFile(string file)
{
//Console.WriteLine("Constructed with a file");
Console.WriteLine(file);
} public CommaDelimitedFile(File file)
{
Console.WriteLine("Constructed with a file object");
} public CommaDelimitedFile()
: this("Default file")
{
Console.WriteLine("blank");
}
public CommaDelimitedFile()
: this("Default file")
当你的CommaDelimitedFile file4 = new CommaDelimitedFile();这句代码执行的时候,就调用无参数构造函数,但是你的无参构造函数又要写了这句代码this("Default file"),就在现执行无参构造函数之前先执行CommaDelimitedFile(string file)这个构造函数。
你要调用第二个构造函数必须传值一个File 类型的对象的哈
//Constructed with a file object
//Constructed with a file
//Constructed with a file object
还是不明白
coowoo(性潮和尚
public CommaDelimitedFile()
: this(new File(...))
{
}
中省略号的内容是什么?