最赞回答 / 零零拾
类使对象的模板 通过类可以实例化出对象 这样已经很完美了 但是如果设计基类却成了非常讲究技巧的事情 如果基类设计的过于繁重就会影响通用性 如果基类设计的过于简单 将会使代码变得复杂 此时就该接口出场了 接口往往代表着一种能力 推荐把接口明明城动词 比如说 定义一个基类叫动物 猫继承了动物 然后在定义接口吃/泡/叫等等 这样以后有什么其他的类出现了 比如外星人 可能并不是动物 但是他可能会跑 这样就能直接实现这个接口 最主要的使可以直接要求外星人跑 而不需要进行单独的处理 常见的应用也很多 比如,事件监听,...
2017-03-10
最赞回答 / 慕粉1717395010
如果是new,那你用基类声明一个子类的变量时,他不会调用子类new的方法,而是调用基类的方法,”E:Pet cat1=new Cat("Tom"); “ cat1.Speaking仍是调用基类的Speaking; 如果是用虚方法,“E:Pet cat2=new Cat("Tom"); ” ,cat2.Speaking调用的就是派生类的Speaking;不知道我讲的你能懂不,我也是刚学的。
2017-03-05
讲师回答 / kong66
new是隐藏父类方法,override是重载父类方法,区别就在调用的时候。如果父类类引用到派生类对象,通过父类引用去调用隐藏方法(new的),则调用基类方法;如果调用override同名方法,则调用的是派生类方法。
2017-02-28