给定了一个静态类,没有办法创造实例,可以自己重新定义一个静态类,在类中
定义一个静态方法,并(this 静态类 类名/【参数】)
静态类扩展要求
静态类扩展方法
静态类主要用于基础类库(如数学库)和扩展方法
静态类
1、如果类只包含了静态的方法和属性,并且标识为static
2、静态类不能创建实例,不能被继承
3、可以为静态类定义一个静态构造函数
1、静态类
包含静态属性和方法,被标记为static
静态类不能创建实例,不能被继承。
可以为静态类定义静态构造函数。
2、作用
主要用于基础类库(math类)和扩展方法。
3、如何扩展方法
若有源代码,直接添加一个新方法
如果不能修改单也不是密闭类,可以派生子类扩展
如果以上条件不满足,可以使用静态类扩展方法
3、在静态类中的静态方法中参数中加入this关键,则可以直接利用对象调用方法就可以。
static class PetGuide//扩展Dog类的方法
{
public static double HowToFreedDog(this Dog dog){...}
{
Console.WriteLine("播放如何喂养一直狗狗的视频");
}
}
Dog dog=new Dog("Tommy");
dog.HowToFreedDog();
4、总结扩展要求
扩展方法所属的类,必须是static类
扩展方法本身就是static方法
扩展方法的第一个参数类型,必须是this+类名。
例如:
Dog类没办法修改,修改Dog类就需要扩展方法,需要一个喂养宠物的方法
static class PetGuide//扩展Dog类的方法
{
static public void HowToFreedDog(this Dog dog)
{
Console.WriteLine("播放如何喂养一直狗狗的视频");
}
}
···
Dog dog=new Dog();//Dog类中没有HowToFreedDog();方法
dog.HowToFreedDog();//扩展之后好像Dog类中有这样的方法一样。
扩展想扩展类的方法
静态类不能够创建实例,不能被继承。
静态类可以为静态类定义一个静态的构造函数。
静态类的作用:用于基础类库和拓展方法
静态类 金太累
静态类的规则
扩展类需要注意的有
在扩展时要扩展的类前面添加this
如何扩展方法
静态类的特点
静态类扩展方法的要求
静态类扩展方法
静态类扩展方法
如何扩展方法
静态类的用途
静态类的定义
静态类主要用于基础库类(如数学库)和扩展方法
扩展总要求
扩展方法所属的类,必须是static类
扩展方法本身必须是static方法
扩展方法的第一个参数类型,必须是this+类名
静态类:
1、如果类只包含了静态的方法和属性,并且标识为static;
2、静态类不能创建实例,不能被继承;;
3、可以为静态类定义一个静态构造函数。
静态类主要用于基础类库(如数学库(Math类))和扩展方法。
总结扩展要求:
1、扩展方法所属的类,必须是static类
2、扩展方法本身必须是static方法
3、扩展方法的第一个参数类型,必须是this+类名
扩展:
在不动原有的类的情况下扩展方法
//对Cat类 进行扩展
static class aaa
{
static public void ab(this Cat cat)
{
Console.WriteLine("13:");
}
}
//调用
Cat b = new Cat("66");
b.ab();
静态类:
1、如果类只包含了静态的方法和属性,并且标识为static;
2、静态类不能创建实例,不能被继承;;
3、可以为静态类定义一个静态构造函数。
静态类主要用于基础类库(如数学库(Math类))和扩展方法。
如何扩展方法:
1、如果有源代码,直接添加一个新方法;
2、如果不能修改但也不是密闭类,可以派生子类扩展;
3、如果以上条件都不满足,可以使用静态类扩展方法。
总结扩展要求:
1、扩展方法所属的类,必须是static类;
2、扩展方法本身必须是static方法;
3、扩展方法的第一个参数类型,必须是this+类名。
总结扩展要求:
1、扩展方法所属的类,必须是static类
2、扩展方法本身必须是static方法
3、扩展方法的第一个参数类型,必须是this+类名
如何扩展方法:
1、如果有源代码,直接添加一个新方法
2、如果不能修改但是也不是密闭类,可以派生子类扩展
3、如果以上条件都不满足,可以使用静态类扩展方法
静态类作用:
主要用于基础类库(如:数学库(Math类))和扩展方法。
静态类:
1、如果类只包含了静态的方法和属性,并且标识为static。则此类为静态类
2、静态类不能创建实例,不能被继承(相当于sealed关键字定义的密闭类)
3、可以为静态类定义一个静态构造函数,初始化静态成员。