淘宝网站做推广收费吗,wordpress前台漏洞,网站注册系统用什么做,怎样做视频播放网站类定义中可以使用的访问修饰符组合none or internal 类只能在当前工程中访问public 类可以在任何地方访问abstract or internal abstract 类只能在当前工程中访问#xff0c;不能实例化#xff0c;只能继承public abstract 类可以在任何地方访问#xff0c;不能实例化#…类定义中可以使用的访问修饰符组合 none or internal 类只能在当前工程中访问public 类可以在任何地方访问abstract or internal abstract 类只能在当前工程中访问不能实例化只能继承public abstract 类可以在任何地方访问不能实例化只能继承sealed or internal sealed 类只能在当前工程中访问不能派生只能实例化public sealed 类可以在任何地方访问不能派生只能实例化 构造函数 其名称同类名没有返回值也不需要void ,在new的时候调用。 所有的类都有构造函数只不过C#会默认一个无参数的构造函数如果不定义则使用默认。 如果定义了构造函数则默认失效。 嵌套类 C#允许使用类嵌套 嵌套类型被视为是外层类型的成员因此嵌套类型可以访问外层类型中的所有其他成员。 根据类的成员默认访问修饰符为:private的原则嵌套类默认访问修饰符为private 嵌套类型可以自由访问外层类型的成员而不在乎那些成员是否私有。外层类型如果想访问嵌套类型则要受到访问规则的限制。 关于嵌套类的继承后面会详细说明继承如果一个类型继承了一个包含嵌套类型的类型那么它也会自然的继承基类型中的嵌套类型因为那个嵌套类型本身就是基类型的一个成员。因此只要那个嵌套类型不是private或者天生不能被继承的子类型中新声明的嵌套类型还可以继承那个嵌套类型。 析构函数 不能在结构中定义析构函数。 只能对类使用析构函数。一个类只能有一个析构函数。无法继承或重载析构函数。无法调用析构函数。 它们是被自动调用的。析构函数既没有修饰符也没有参数。一 析构函数的特征 析构函数只能存在于类中而不能存在于结构中析构函数不能有任何修饰符包括访问控制修饰符静态修饰符抽象修饰符虚拟修饰符等都不能有析构函数没有参数这就意味着不能有任何重载。 二 析构函数的调用时机 析构函数会在对象被垃圾收集器回收时调用但垃圾收集器有个特点它是懒惰的 它并不会在变量出了作用域和生命期后立即回收而是在它认为适当的时候才回收一般是内存紧张的时候。 例子 class Car { ~Car() // destructor { // cleanup statements... } } 对象的消亡 对象超出作用范围 消亡 对象 引用手动赋值 null 消亡 类的继承 继承是面向对象编程的一个重要特性。任何类都可以从另一个类中继承这就是说这个类拥有它继承的类的所有成员。在OOP 中被继承的类称为父类(也称为基类)。注意C#中的对象仅能直接派生于一个基类当然基类也可以有自己的基类。 类的继承一个重要作用是子类可重用父类的代码。这样就可以在一个地方集中维护一份代码避免了很多的重复的代码。 c#只支持单继承 继承语法 class ModelACar : Car 重构 比如现在我有两个类一个是Cat另一个是Dog他们都有叫方法如果我每个类都去写实现叫方法就造成了代码的重复怎么办那可以把叫方法抽象出来放到一个父类Animal中让子类Cat、Dog去继承 【重写】 多出现在多态里父类里写一个virtual方法或abstract方法子类通过override重写去实现父类的方法 1.重写父类的方法要用到override关键字(具有override关键字修饰的方法是对父类中同名方法的新实现) 2.要重写父类的方法前提是父类中该要被重写的方法必须声明为virtual或者是abstract类型。给父类中要被重写的方法添加virtual关键字表示可以在子类中重写它的实现。(注意C#中的方法默认并不是 virtual类型的因此要添加virtual关键字才能够被重写)3.virtual关键字用于将方法定义为支持多态有virtual关键字修饰的方法称为“虚拟方法” class Animal {
public virtual void GetShoutSound() { }
}
class Cat:Animal {
public override void GetShoutSound() {
Console.WriteLine(猫的叫声为喵);
}
}
class Dog : Animal {
public override void GetShoutSound() {
Console.WriteLine(狗的叫声为);
}
}转载于:https://www.cnblogs.com/gwyy/p/8028879.html