c# Class 类型声明说了什么?
What does the c# Class type declaration say?
Class ObjName = new Class();
这个问题与我翻阅如下定义有关:
public class Thing{
// Stuff
}
public class Animal:Thing{
// Stuff
}
后跟此声明Thing x = new Animal();
相关问题:第一个classdefinition/type与第二个(new关键字之后)有什么关系?
这个 Class ObjName = new Class();
创建一个 Class
类型的对象调用默认构造函数并将指向此对象的引用分配给变量 objName
.
此外,此 Thing x = new Animal();
做完全相同的事情(它创建一个对象并将对该对象的引用分配给一个变量)。但是,这里有一个细微的差别。 Animal
对象是 Thing
对象。也就是说,Animal
继承了Thing
。因此可以将对 Animal
对象的引用分配给类型为 Thing
.
的变量
Here 是很好的继承 link。
如果我猜对了你的意思...
public class Thing{
}
public class Animal:Thing{
}
这是说 class Animal 派生自 class Thing。 (动物:事物)。所以如果你多填一点...
public class Thing{
void DoStuff()
{
Console.Write("Doing Stuff");
}
}
public class Animal:Thing{
}
你可以这样做...
var ani = new Animal();
ani.DoStuff();
编辑:为了您在所用术语中的利益,因为它们对于初学者(和专家)来说可能已经足够困难了,这将是一个 class 定义
public class Thing
{
void DoStuff()
{
Console.Write("Doing Stuff");
}
}
这将是一个变量声明(这在今天不像几年前那么普遍,至少在 c# 和相关语言中是这样)
Thing x;
这些是变量声明和赋值 - 也称为 "instantiation",因为我们正在创建 class 定义的实例。在此处使用 var
是一个很好的快捷方式,除非有令人信服的理由,否则您应该考虑使用它而不是在左侧指定类型。
var x = new Animal();
var y = new Thing();
Class ObjName = new Class();
这个问题与我翻阅如下定义有关:
public class Thing{
// Stuff
}
public class Animal:Thing{
// Stuff
}
后跟此声明Thing x = new Animal();
相关问题:第一个classdefinition/type与第二个(new关键字之后)有什么关系?
这个 Class ObjName = new Class();
创建一个 Class
类型的对象调用默认构造函数并将指向此对象的引用分配给变量 objName
.
此外,此 Thing x = new Animal();
做完全相同的事情(它创建一个对象并将对该对象的引用分配给一个变量)。但是,这里有一个细微的差别。 Animal
对象是 Thing
对象。也就是说,Animal
继承了Thing
。因此可以将对 Animal
对象的引用分配给类型为 Thing
.
Here 是很好的继承 link。
如果我猜对了你的意思...
public class Thing{
}
public class Animal:Thing{
}
这是说 class Animal 派生自 class Thing。 (动物:事物)。所以如果你多填一点...
public class Thing{
void DoStuff()
{
Console.Write("Doing Stuff");
}
}
public class Animal:Thing{
}
你可以这样做...
var ani = new Animal();
ani.DoStuff();
编辑:为了您在所用术语中的利益,因为它们对于初学者(和专家)来说可能已经足够困难了,这将是一个 class 定义
public class Thing
{
void DoStuff()
{
Console.Write("Doing Stuff");
}
}
这将是一个变量声明(这在今天不像几年前那么普遍,至少在 c# 和相关语言中是这样)
Thing x;
这些是变量声明和赋值 - 也称为 "instantiation",因为我们正在创建 class 定义的实例。在此处使用 var
是一个很好的快捷方式,除非有令人信服的理由,否则您应该考虑使用它而不是在左侧指定类型。
var x = new Animal();
var y = new Thing();