当从基类继承了一个(非抽象成员时),也就继承了父类的实现代码.如果是virtual成员,可以override:另外一种方法也能隐藏父类的实现代码(虚成员和非虚成员都可使用):定义与父类相同的方法名,加上关键词new public class Parent { public void Fun() { Debug.log("我是爸爸"); } public virtual void virtualFun() { Debug.log("我是妈妈"); } } class
在之前学习的C++章节里,可以发现结构体越来越不像C语言里的结构体了 比如,里面可以定义函数,可以定义private/public,结构体名还可以指向父类. 但是C++需要兼容C,所以C++中便提供了新的关键字class用来定义类 class 关键字class和struct用法完全相同(struct A == class B) class与struct区别(如下图) 在struct中,所有成员的默认访问级别为pubilc 在class中,所有成员的默认访问级别为private 在以后的学习里,就
在c#中,有时候我们会编写类似这样的代码: public class a<T> { //具体类的实现 } public class b : a<string>{} 如果b继承a的类型不确定,这个时候我们是无法通过baseType来直接判断b是否继承于a的. 如果我们写如下代码: typeof(b).baseType == typeof(a) 返回值是false. 因为typeof(b).baseType返回的类型是a`1[System.String],而typeof(a<&g