我遇到了很多理解多态性(编译时间和运行时间)的线程。我很惊讶地看到一些程序员声称Overloading是Runtime和Overriding是编译时的链接。
我想从这里知道的是:
- 运行时多态性与实时例如,小码和什么情况下,我们应该使用。
- 使用REAL TIME示例和小代码编译时间多态性以及何时使用。
因为我看过很多理论的定义,但我不理解的是满意的。
另外,我给了一个想法,我也觉得,重载应该是运行时,因为,比如说我有一个计算Area的方法,在运行时它只能根据参数I pass来决定调用哪个重载方法如果我只传递一个参数,它应该触发Square,如果参数是2,它应该触发Rectangle)....那么是不是我可以声明它的运行时?它的编译时间如何? (大多数理论上讲,过载是编译时间,但他们甚至没有给出一个正确的实时时间的例子...很少声称它的运行时间)...
此外,我觉得重写是编译时,因为,当你编写代码并且complie,你确保你使用了virtual关键字,并且在派生类中重写了这个方法,否则会给你编译时错误。所以我觉得它的编译时间,以同样的方式,我在一个线程看到.....但多数线程声称其运行时:d
我很困惑:(这个问题是附加到我的问题1和2,请与实时例如帮助..因为我已经知道的理论定义.... :(
谢谢....
如果我完全理解你的问题:运行时间,调用虚拟方法。编译时间,调用任何其他方法。 –
UhmmM杰夫,但它是一切吗? – Learner