C#类和对象是面向对象编程的重要概念。本教程将向您详细介绍C#类和对象的基本知识。
在C#中,类是对一类对象的抽象,它是描述对象共同特征和行为的模板。您可以通过创建类的实例,来创建一个或多个具有相同特征和行为的对象。
声明类的语法如下:
public class ClassName { // Fields, properties, methods, events, and other members go here. }
在上面的代码中,“ClassName”是类的名称,而大括号内是类的成员。
对象是类的实例,表示具有相同特征和行为的一个具体事物。您可以通过使用 new 关键字和类名来创建对象。
例如:
ClassName obj = new ClassName();
在上面的代码中,“obj”是一个对象的名称,而“ClassName”是类的名称。
类的成员可以是字段、属性、方法、事件等。类成员定义类的特征和行为。
例如,下面是一个包含字段和方法的类的示例:
public class ClassName { private int num; public ClassName() { num = 0; } public ClassName(int value) { num = value; } public int Num { get { return num; } set { num = value; } } public void Display() { Console.WriteLine("Num: {0}", num); } }
在这个示例中,有两个构造函数:一个无参数构造函数和一个带一个参数的构造函数。
1.反射出来的对象有区别(需要有反射相关知识才能理解)
2.属性只有调用才会走Get逻辑,字段实例化类就会赋值
3.get里面会重复调用,字段不会。
public int a { get { return 1;//每次使用a都会走这个逻辑 } } //也可以简化成这样 //public int a { get=>1; } public int b=0;//实例化后在使用不会重新赋值
4.属性有(get(获取) set(赋值))2部分组成 功能比字段更强大
public int a { get=>1; } //没有set属性就是只读 public int a { get;set; } //有get;set;可以写入也可以读取 public int a { get=>1;set; } //给默认值1
此外,您还可以通过使用继承来实现类之间的关系。通过继承,您可以创建一个新类,该类继承自已存在的类,并可以添加新的成员或重写父类中的成员。
public class ParentClass { public void Display() { Console.WriteLine("Parent Class"); } } public class ChildClass : ParentClass { public new void Display() { Console.WriteLine("Child Class"); } }
在上面的代码中,ChildClass类继承自ParentClass类,并重写了Display方法。
首先是静态类,静态类是一种特殊类型的类,可以通过类名直接访问它的成员,而无需创建它的实例。静态类只能包含静态成员,而不能包含实例成员。
public static class StaticClass //带有static表示静态类 { public static void Display()//带有static表示静态方法 { Console.WriteLine("Static Class"); } }
在上面的代码中,StaticClass是一个静态类,可以通过类名直接访问它的Display方法。
StaticClass.Display();
2016 © donet5.comApache Licence 2.0