20 C#面向对象编程基础:属性与方法
在前一篇中,我们讲解了如何定义类以及类的基本结构。接下来,我们将深入探讨面向对象编程中的两个重要概念:属性
和方法
。这些概念构成了我们在使用类时的基本信息和行为。
属性
在C#中,属性
是用来封装类中的数据或状态的。它们提供了一种安全的方式来访问和更新类的字段。通过使用属性,我们可以控制字段的访问权限,从而保证数据的安全性。
属性的定义
我们可以通过 C# 关键字 get
和 set
来定义属性。例如,假设我们有一个Person
类,它包含Name
和Age
两个属性:
public class Person
{
private string name;
private int age;
public string Name
{
get { return name; }
set { name = value; }
}
public int Age
{
get { return age; }
set
{
if (value >= 0) // Age不能为负值
age = value;
else
throw new ArgumentException("Age cannot be negative");
}
}
}
在此案例中,Name
属性有一个简单的get
和set
访问器,而Age
属性的set
访问器中加入了一个条件,以确保年龄不能为负值。
使用属性
使用属性非常简单。可以通过类的实例直接进行读取或赋值操作:
var person = new Person();
person.Name = "Alice"; // 设置属性
person.Age = 25; // 设置属性
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}"); // 输出属性值
方法
方法
是类中定义的行为,定义了在类的实例上可以执行的操作。通过方法,我们可以实现更复杂的逻辑。
方法的定义
下面我们在Person
类中添加一个方法Introduce
,来让Person
实例自我介绍:
public class Person
{
// ...(省略属性定义)
public void Introduce()
{
Console.WriteLine($"Hello, my name is {Name} and I am {Age} years old.");
}
}
在这个例子中,Introduce
方法使用了该实例的Name
和Age
属性来输出信息。
调用方法
调用方法与访问属性类似。你只需要使用类的实例来调用方法:
var person = new Person();
person.Name = "Alice";
person.Age = 25;
person.Introduce(); // 输出:Hello, my name is Alice and I am 25 years old.
总结
在这一篇中,我们探讨了属性和方法的基础知识:
属性
用于封装数据,提供安全的访问。方法
定义类的行为,可以执行具体的逻辑。
掌握这些基础后,你将能够构造更复杂的类结构,并为实例定义多种行为。下一篇文章中,我们将继续研究构造函数与析构函数的概念,这对于对象的创建与销毁有着重要作用。
希望本文能帮助你更好地理解 C# 的面向对象编程基础。继续加油!