博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
构造器内部的多态方法的行为
阅读量:6966 次
发布时间:2019-06-27

本文共 1044 字,大约阅读时间需要 3 分钟。

hot3.png

package thinking;import static java.lang.System.out;/** * @USER echo * @TIME 2017-07-23 16:58 * @DESC 构造器内部的多态方法的行为 **/class Glyph {    void draw() {        out.println("Glyph.draw()");    }    Glyph() {        out.println("Glyph() before draw()");        draw();        out.println("Glyph() after draw()");    }}class RoundGlyph extends Glyph {    private int redis = 2;    RoundGlyph(int r) {        redis = r;        out.println("RoundGlyph.RoundGlyph().redis = " + redis);    }    void draw() {        out.println("RoundGlyph.draw().redis = " + redis);    }}/** * 初始化的实际过程是: * * 1.在其他任何事物发生之前,将分配给对象的存储空间初始化成二进制的零 * 2.如前所述那样调用基类构造器。此时,调用被覆盖后的draw()方法(要在调用RoundGlyph构造器之前调用), *      由于步骤1的缘故,我们此时会发现redius的值为0 * 3.按照声明的顺序调用成员的初始化方法。 */public class PolyConstructors {    /**     * Glyph() before draw()     * RoundGlyph.draw().redis = 0     * Glyph() after draw()     * RoundGlyph.RoundGlyph().redis = 5     *     */    public static void main(String[] args) {        new RoundGlyph(5);    }}

转载于:https://my.oschina.net/u/3613710/blog/1483902

你可能感兴趣的文章
命令行星期二 —— 序
查看>>
《正则表达式经典实例(第2版)》——2.14 消除不必要的回溯
查看>>
话说模式匹配(2) scala里是怎么实现的?
查看>>
《Python数据可视化编程实战》—— 1.5 在Windows上安装matplotlib
查看>>
《JavaScript面向对象编程指南》——1.6 OOP概述
查看>>
什么是虚方法
查看>>
贴图、音乐-资源共享的一些网站
查看>>
利用百度地图制作标志
查看>>
maven打包
查看>>
每天学一点Scala之sealed
查看>>
二叉树(高度、结点个数)递归
查看>>
vSphere5.0虚拟网络详解(学习笔记之一)
查看>>
领域驱动设计(Domain Driven Design)参考架构详解
查看>>
Python中利用urllib2使用POST方式上传文件,并解决Authorization问题
查看>>
我的友情链接
查看>>
why use haxe
查看>>
40天紧急备战PMP,从成功报名到通过考试,一次PASS!!!
查看>>
// 打印用户自定义常量
查看>>
ubuntu下cairo-dock安装以及3D效果设置
查看>>
水晶头
查看>>