为了账号安全,请及时绑定邮箱和手机立即绑定

求解++++++++++++

用基类指向派生类 ,那派生类中自己所拥有独特的方法怎么被调用? Pet() cat = new Cat(); Cat(){ //独特的方法 }

正在回答

2 回答

就相当于:

动物 a = new 鸟();//我要一个动物就行(动物 a),给了一只鸟(new 鸟())

a.吃();//我们知道a是动物,动物都能吃,所以a.吃()没有问题。

a.飞();//这句话就有问题了,因为不是所有的动物a都能飞();所以,动物a是不能访问鸟的飞()的。

0 回复 有任何疑惑可以回复我~
#1

qq_梦屿_0 提问者

非常感谢!
2018-07-06 回复 有任何疑惑可以回复我~

这个实例(cat)是子类的,但是因为你声明时是用父类(Pet)声明的,所以你用正常的办法访问不到子类(Cat)自己的成员Cat(),只能访问到从父类继承来的成员。 如果要硬访问的话,Cat() cat1 = cat as Cat(); cat1.Cat(); 我觉得这样就毫无意义了。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C#面向对象编程
  • 参与学习       68858    人
  • 解答问题       153    个

本系列教程主要是,带你学习C#面向对象编程的编程思想、编程技巧

进入课程

求解++++++++++++

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信