10.1 类与对象
定义类
1 | public class Person |
创建对象
1 | // 使用 new 创建对象 |
10.2 字段与属性
字段
1 | public class User |
属性
1 | public class Product |
10.3 构造函数
基本构造函数
1 | public class Student |
构造函数链
1 | public class Employee |
10.4 this 关键字
1 | public class Point |
10.5 对象初始化器
1 | public class Book |
10.6 静态成员
静态字段与属性
1 | public class Counter |
静态方法
1 | public class MathHelper |
静态类
1 | public static class StringHelper |
10.7 访问修饰符
| 修饰符 | 说明 |
|---|---|
public |
任何代码都可访问 |
private |
仅类内部可访问 |
protected |
类和派生类可访问 |
internal |
同一程序集可访问 |
protected internal |
同一程序集或派生类 |
private protected |
同一程序集的派生类 |
示例
1 | public class BankAccount |
10.8 只读字段与常量
readonly 字段
1 | public class Config |
const 常量
1 | public class Constants |
10.9 析构函数
1 | public class Resource |
10.10 本章小结
- 类是对象的模板,对象是类的实例
- 字段存储数据,属性提供访问控制
- 构造函数初始化对象,支持重载和链式调用
this指代当前实例- 对象初始化器简化对象创建
- 静态成员属于类,不属于实例
- 访问修饰符控制可见性
readonly运行时常量,const编译时常量
练习题
- 创建
Rectangle类,计算面积和周长 - 实现
BankAccount类,支持存款、取款、查询余额 - 使用静态方法实现温度转换(摄氏/华氏)
- 以下代码输出什么?
1
2
3
4class Test { public static int Count = 0; public Test() { Count++; } }
var t1 = new Test();
var t2 = new Test();
Console.WriteLine(Test.Count);