1、首先有一个叫分部类和分部方法
partial class partialtest
{
public void output1() {
Console.WriteLine("output1");
}
}
partial class partialtest
{
public void output2()
{
Console.WriteLine("output2");
}
}
在类前面加上partial即可用相同的类名,分部定义方法。实例化此类则可以调用所有分部的方法。
2、除了object类,所有类都是派生类。object类是唯一的非派生类
3、使用new 来使派生类掩盖隐藏基类中的方法
class newtest
{
public void TestClassBass()
{
Console.WriteLine("newtests");
}
}
class newtest2:newtest
{
new public void TestClassBass()
{
Console.WriteLine("newtest2");
}
}
输出结果使用newtest2 实例化对象时输出的就是被掩盖后的。
同时在newtest2中可以使用base.TestClassBass();调用基类中的方法。
newtest2 p2 = new newtest2();
newtest p3 = (newtest)p2;
使用(基类名)引用基类;
用virtual来定于虚方法在基类中,在派生类中使用override来重写基类中的带virtual的虚方法。
4、使用abstract来定义抽象方法,并使用override在派生类中实现。
abstract class abstract_t
{
public abstract void printname(string name);
}
class reabstract_t : abstract_t {
public override void printname(string name)
{
Console.WriteLine("name:" + name);
}
}
main中调用;
reabstract_t a = new reabstract_t();
a.printname("libai");
Console.ReadKey();
抽象类不能实例化所有要借助派生类来实例化。
145停。