abstract class Glyph {
abstract void draw();
Glyph() {
System.out.println("Glyph() before draw()");
draw();
System.out.println("Glyph() after draw()");
}
}
class RoundGlyph extends Glyph {
private int radius = 1;
RoundGlyph(int r) {
radius = r;
System.out.println(
"RoundGlyph.RoundGlyph(), radius = " + radius);
}
void draw() {
System.out.println(
"RoundGlyph.draw(), radius = " + radius);
}
}
public class PolyConstructors {
public static void main(String[] args) {
new RoundGlyph(5);
}
}
这么一段简单的程序,你可知道最后的输出是什么吗?
什么?你认为很easy?那你来呀,看你是否能得出正确的答案和理出正确的头绪.
如果你觉得需要一些提示,那么下面的知识点会起到一定参考作用.
1:如果不在派生类的构造函数里明确调用父类的构造函数,那么编译器就会悄悄调用父类的默认构造函数.并且是最先调用.
2:如果你在构造函数里面调用了动态绑定的方法,那么它会使用那个覆写后的版本.
最后答案如下:
Glyph() before draw()
RoundGlyph.draw(), radius = 0
Glyph() after draw()
RoundGlyph.RoundGlyph(), radius = 5
分享到:
相关推荐
C++实现的一个继承与多态的例子,内容详细且易懂
最近看DELPHI高手突破,把里面多态的说明,用代码实现了一下。多态性是允许用户将父对象设置成为与一个或更多的它的子对象相等的技术,赋值之后,基类 ...代码里面没什么注释,只是一个多态的直观体现。
通过两个程序代码例子彻底理解什么是多态,什么是虚函数;
C#多态技术及简单例子描述 描述性文字为主,加简单例子
安老师 的一个例子,c++ 的封装继承多态例子
c#多态,继承,接口,结构例子
该资料,是一个多态的例子,充分的掌握多态,让多态得到很好的应用
java 的多态是java的重要的四大特性之一,多态又有多少人真正说的清楚呢?这里有最经典的例子,最生动的最鲜活的例子讲解,相信你一定能学会
C#多态演示例子 QQ:292258449
Java课程的一道实验考试题。主要是关于IO(从键盘输入),继承,多态(动态绑定,静态绑定),集合(客户化排序)等内容。感觉对于理解多态和继承还是挺有作用的。
这是关于C#封装继承多态的一个简单的例子,对于深入学习C#中封装继承多态将很有帮助!
简单例子展示虚函数展现的多态特性,更改一处注释就能对比基类是否是虚函数带来的变化
继承和多态简单例子文本文档.txt
关于继承和多态的简单练习,今天写了个多态的例子练了练手,希望可以对大家有所帮助吧。
此文件为多态的两个经典案例,利用该程序,基本完全掌握多态的原理
VS2010 C# 多态实例 适合初选者
1) 理解重载运算符的意义。 2) 掌握(友元)运算符重载函数的实现方法。 3) 理解动态联编的概念,学习使用虚函数实现动态多态性。 4) 掌握虚函数和纯虚函数的使用方法。 5) 掌握抽象类的使用。
c#初学者了解学习,大家对多态总是似懂非懂,没能好好的理解,做了一个关于多态的小案例
学习多态的虚函数例子,更方便的理解多态,学习多态,更好的理解面向对象
用一个最最简单的例子,来讲解:使用Springboot @TypeDiscriminator注解实现多态对象的查询,jackson @JsonTypeInfo注解实现controller多态支持。