虽然项目中一直在使用类、结构体等类型,仔细琢磨,还真无法系统的说出个所以然。记录一下类、结构体、类和结构体区别
对于类,大家都特别熟悉。简单的介绍一下类的结构,然后记录一下Class需要注意的地方。考虑到静态类和非静态类的区别。下面介绍的都是主要以非静态类为前提介绍。
1、类的成员
类的数据和函数都属于类的成员
- 类的成员可以分为两类:首先是类本身所声明的。然后是从基类中继承来的。如果在类声明中没有指定基类,则该类将继承System.Object类的所有成员。
- C#中的类成员可以是任意类型,包括数组和集合。
- C#类成员修饰符。
- private声明私有成员,只有该类中的成员可以访问,如果在声明中没有设置访问修饰符,则默认是private。
- public 声明公有成员,访问不受限制,允许从外部访问。
- protected声明受保护成员,包含类和包含类派生的类可以访问 ,对外界是隐藏的。
- internal声明内部成员,只能当前程序集可以访问。
- protected internal声明受保护的内部成员,只能访问当前程序集和包含类派生的类。
public class Teacher { private int _age; private string _name; public Teacher(int age, string name) { this.Age = age; this.Name = name ?? throw new ArgumentNullException(nameof(name)); } public int Age { get { return this._age; } set { this._age = value;} } public string Name { get { return this._name; } set { this._name = value; } } public string GetName() { return this.Name; } }