静态成员,静态类,抽象成员,抽象类,单例模式
静态成员: ⽤static修饰的成员称为静态成员。
静态成员只能由类来调⽤。
静态类: ⽤static修饰的类称为静态类。静态类不能实例化,所以内部只允许有静态成员或const修饰的常量。
1.仅包含静态成员和const修饰的常量。
2.不能被实例化。
3.是密封的。(默认已经是sealed,不能再⽤sealed修饰)
4.有静态构造⽅法(函数),但静态构造⽅法必须是⽆参数的。
静态构造方法:静态构造⽅法⽤于初始化任何静态数据, 或⽤于执⾏仅需
执⾏⼀次的特定操作。在创建第⼀个实例或引⽤任何静态
成员之前,将⾃动调⽤静态构造函数。
抽象类:抽象类独⽴于抽象⽅法,也就是说没有抽象⽅法,类也可以声明为抽象类,抽象类不能被直接实例化,其他跟普通类没有区别。
1.抽象类中如果有抽象⽅法,那么被继承的具体类⼀定要实现抽象类中得所有抽象⽅法。
2.当然,如果是抽象类B继承抽象类A,那么抽象类B可以实现基类A中的抽象⽅法,可以不实现A中得抽象⽅法。
抽象方法:用sbstract修饰的方法称为抽象方法。
抽象类与抽象方法:1.抽象⽅法只作声明,⽽不包含实现,抽象⽅法旨在继承后实现,所以不能⽤private修饰。
2.抽象类不能被直接实例化。
3. 抽象类可以没有抽象属性和抽象⽅法,但是⼀旦有了抽象⽅法,就⼀定要把这个类声明为抽象类。
4.如果抽象类的派⽣类不是抽象类,那么必须重写抽象类的所有抽象⽅法。
抽象方法与虚方法:1.抽象⽅法⼀定不能有实现,虚⽅法⼀定要有实现;
2.抽象⽅法被具体类继承后,⼀定要被重写,虚⽅法可以不重写。
3.抽象⽅法⼀种特殊的虚⽅法,⼀旦类中有抽象⽅法,则类必须声明为抽象类,抽象类中可以有虚⽅法。
单例设计模式:简单来说单例设计模式就是确保⼀个类只有⼀个实例。
单例模式是资源管理的必备模式,保证⼀个类只有⼀个实例并且这个实例易于被访问。