zoukankan      html  css  js  c++  java
  • Java学习之路(四)--Thinking in Java

      浅谈Java继承。

      继承在Java中是及其重要的,熟悉C++的程序员也许对继承并不陌生。但是继承在Java与C++中有些不同。比如引入了super关键字,可以调用派生类所继承的基类的方法(或者函数),还有,虽然在C++中派生类可以重写(overriding)基类中的某些方法,并且在派生类中所调用其实是派生类中所重写的方法,并不能调用基类中的原有方法。但是在Java中却不相同。你完全可以重写一个基类中的方法,并且完全可以调用这两个方法为你的派生类所用。Java实在神奇。

      这里要谈的不是重写,要谈的是继承中的构造顺序。在Java中,继承类的构造顺序其实和C++相差不大,先是构造基类,接着是下面的派生类,一层一层往下来。

      一个源代码的例子如下:

    class Art{
    	Art(){
    		System.out.println("Art constructor");
    	}
    }
    
    class Drawing extends Art{
    	Drawing(){
    		System.out.println("Drawing construcyion");
    	}
    }
    
    public class Cartoon extends Drawing{
    	public static void main(String[] args){
    		Cartoon x = new Cartoon();
    	}
    }
    

      输出结果为

    Art constructor
    Drawing construcyion
    

      可以发现,即使Cartoon类没有显示的说明自己的构造方式,由默认方式完成,但还是严格按照顺序来进行构造。

      至于内存清理,(⊙o⊙)…,Java程序猿管内存清理干嘛?

  • 相关阅读:
    nodejs 核心模块crypto
    es6新特性学习
    nodejs 常用全局包
    ionic+angular+cordova 安卓环境搭建
    谷歌浏览器调试保存到文件
    Linux命令
    Linux中用户管理详解(上)-Linux学习日记
    liunx下忘记root密码的解决方法
    cvCanny的参数
    VC运行时库(/MD、/MT等)
  • 原文地址:https://www.cnblogs.com/zhaoyansheng/p/4827480.html
Copyright © 2011-2022 走看看