1. 概念:
类或结构定义的作用类似于蓝图(图纸),指定该类型可以进行哪些操作。 从本质上说,对象是按照此蓝图分配和配置的内存块。 程序可以创建同一个类的多个对象。 对象也称为实例,可以存储在命名变量中,也可以存储在数组或集合中。 使用这些变量来调用对象方法及访问对象公共属性的代码称为客户端代码。 在 C# 等面向对象的语言中,典型的程序由动态交互的多个对象组成。
2. 内存存储
由于类是引用类型,因此类对象的变量引用该对象在托管堆上的地址。 如果将同一类型的第二个对象分配给第一个对象,则两个变量都引用该地址的对象。
3. 对象的创建
类的实例是使用 new
运算符创建的。 在下面的示例中,Person 为类型,person1 和 person 2为该类型的实例(即对象)。
例子:
定义一个Person
类
public class Person {
public string Name { get; set; }
public int Age { get; set; }
public Person(string name, int age)
{
Name = name;
Age = age;
}
public void run()
{
Console.WriteLine("我跑了");
}
// 其他的属性和方法写在这里
}
static void Main(string[] args)
{
Person person1 = new Person("Leopold", 6);
person1.run();
Console.WriteLine("person1 Name = {0} Age = {1}", person1.Name, person1.Age);
//声明一个Person类型的变量Person2,将Person1的值赋给它
Person person2 = person1;
//改变Person2的Name和Age
person2.Name = "Molly";
person2.Age = 16;
Console.WriteLine("person2 Name = {0} Age = {1}", person2.Name, person2.Age);
Console.WriteLine("person1 Name = {0} Age = {1}", person1.Name, person1.Age);
// 求打印出来的值各是多少
Console.WriteLine("Press any key to exit.");
Console.ReadKey();
}