namespace MySecondCS
internal class Card
其中,namespace
为命名空间,在同一个命名空间中的类可以互相调用。internal
是一个用于修饰类的关键字,是对可访问性的一种限制,这个限制并不强,只要在一个程序集中,就可以访问。
这种访问限制,在前面第一次创建Card
的时候就有提过,Card
类中,修饰成员变量用到的public
也是用于访问限制的。
接下来把之前写好的Card
代码剪切进internal class Card
中,在启动命令行,程序仍然是可以跑通的。
之所以要有继承这个概念,是因为纸牌的玩法太多了,比如我小的时候就喜欢搜集小当家的水浒卡,梁山好汉108将刚好是两幅扑克牌,但是Card
类中并没有额外给梁山好汉提供位置。
这个时候就会遇到两难问题,若直接把Card
改成小当家水浒卡,那么打牌的人会觉得这玩意没啥用,只会白白地浪费内存;若是另起炉灶重新写一个类,那老板会觉得你同样的内容写两遍,是不是欺负我不懂技术?然后说不定就扣工资了。
所以,继承就比较好地解决了这个问题,就像这个名字暗示的,在C#中,可以新建一个水浒卡的类,可以在继承Card
类中的各种成员之外,添加自己独有的成员。
接下来在Card
类的下面,新建一个类,就叫UniCard
,表示统一小当家水浒卡,如下所示