📅  最后修改于: 2023-12-03 14:40:30.901000             🧑  作者: Mango
在C#编程中,类和对象是非常重要的概念。类是一种模板或蓝图,用于创建对象。对象是类的实例,它们具有状态(属性)和行为(方法)。通过使用类和对象,程序员可以建立复杂的数据结构和功能。
本文将介绍C#中的类和对象,涵盖以下主题:
在C#中,可以使用关键字class
来定义一个类。类包含属性、方法和事件等成员。
以下是定义一个简单类的示例:
public class Person
{
// 属性
public string Name { get; set; }
public int Age { get; set; }
// 方法
public void SayHello()
{
Console.WriteLine("Hello, my name is " + Name + " and I am " + Age + " years old.");
}
}
上面的代码定义了一个名为Person
的类,这个类具有Name
和Age
属性以及SayHello
方法。
在C#中,使用new
关键字创建一个类的对象。对象是类的实例,可以通过对象访问类的成员。
以下是创建Person
类的对象并访问其成员的示例:
Person person = new Person();
person.Name = "John";
person.Age = 30;
person.SayHello();
上面的代码创建了一个Person
类的对象person
,设置其属性Name
和Age
的值,并调用SayHello
方法。
类的属性用于描述类的状态。C#提供了自动属性(自动实现属性)的机制,使得定义属性变得更加简洁。
以下是定义和使用属性的示例:
public class Person
{
// 自动属性
public string Name { get; set; }
public int Age { get; set; }
// 带有属性逻辑的属性
private string _address;
public string Address
{
get { return _address; }
set
{
if (value != null && value.Length > 0)
_address = value;
else
throw new Exception("Address cannot be empty.");
}
}
}
上述代码中,Name
和Age
是自动属性,直接通过get;set;
语法定义。Address
是一个带有属性逻辑的属性,通过get和set方法实现了对私有字段_address
的读取和写入。
类的方法用于定义类的行为。方法可以通过类的对象进行调用。
以下是定义和使用方法的示例:
public class Person
{
// ...
// 方法
public void SayHello()
{
Console.WriteLine("Hello, my name is " + Name + " and I am " + Age + " years old.");
}
public void Walk()
{
Console.WriteLine("I am walking.");
}
}
上述代码中,SayHello
和Walk
都是类Person
的方法。
在C#中,继承允许一个类派生自另一个类,并继承其成员。这样的类称为派生类或子类,而被继承的类称为基类或父类。
以下是继承和多态的示例:
public class Student : Person
{
public int Grade { get; set; }
public void Study()
{
Console.WriteLine("I am studying in grade " + Grade + ".");
}
}
上述代码中,Student
类继承自Person
类,具有自己的属性Grade
和方法Study
。由于继承,Student
类可以访问Person
类中的属性和方法。
本文介绍了C#中的类和对象,以及相关的属性、方法、继承和多态。通过理解和应用这些概念,程序员可以构建复杂的数据结构和功能,实现更强大的应用程序。