类 (上篇)
理解类与对象的关系
掌握类的定义:字段、方法、实例化
掌握构造函数与 this 关键字
核心讲解
类是对象的模板,定义了一类事物共同的特征和行为;对象是类的具体实例。面向对象编程的核心就是用类来组织代码。
(1)类的基本结构
修饰符 class 类名
{
// 字段(属性/特征)
// 方法(行为/功能)
}
类名用帕斯卡命名法,大驼峰
一个 cs 文件可以写多个类,但建议一个文件一个类
(2)字段
类的特征变量,定义在类内部、方法外部。
默认访问修饰符是
private(私有,外部不能访问)公开字段用
public(不推荐,推荐用属性,类中篇讲)
(3)方法
类的行为函数,完成特定功能。
修饰符 返回值类型 方法名(参数列表)
{
方法体
return 返回值;
}
void表示无返回值return结束方法并返回结果
(4)实例化对象
类名 对象名 = new 类名(); 用 . 访问对象的字段和方法。
(5)构造函数
创建对象时自动调用的特殊方法,用来初始化对象。
方法名和类名完全相同
没有返回值类型,连 void 都不写
可以重载,不同参数
不写的话默认有一个无参构造
(6)this 关键字
代表当前对象,三个作用:
区分字段和局部变量 / 参数
调用本类的其他方法
调用本类的其他构造函数(必须在第一行)
操作步骤
右键项目 → 添加 → 类,命名为
Student.cs在类中定义字段、方法、构造函数
在
Program.cs中实例化对象,调用方法运行验证
代码示例
// Student.cs 文件
public class Student
{
// 字段
public string Name;
public int Age;
public string Major;
// 无参构造函数
public Student()
{
Console.WriteLine("无参构造执行了");
}
// 有参构造函数
public Student(string name, int age, string major)
{
// this 区分字段和参数
this.Name = name;
this.Age = age;
this.Major = major;
}
// 方法
public void Introduce()
{
Console.WriteLine($"大家好,我叫{Name},今年{Age}岁,专业是{Major}");
}
public void Study()
{
Console.WriteLine($"{Name}正在学习C#");
}
}
// Program.cs
// 实例化对象
Student s1 = new Student();
s1.Name = "张三";
s1.Age = 20;
s1.Major = "计算机科学";
s1.Introduce();
s1.Study();
Console.WriteLine("---");
// 用有参构造创建
Student s2 = new Student("李四", 19, "软件工程");
s2.Introduce();
Console.ReadKey();
常见误区
对象不 new 直接用:引用类型必须 new 创建实例,不然是空引用,会抛空指针异常
构造方法加 void:构造函数没有返回值类型,加了 void 就变成普通方法了
构造方法名写错:必须和类名完全一致,大小写都要对
字段全写成 public:字段一般不建议公开,后面会用属性封装
课后练习
定义一个
Book类,字段:书名、价格、作者编写无参和有参两个构造函数
编写一个
ShowInfo()方法,输出书籍信息在主程序中创建两本书,调用方法

