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程序猿管内存清理干嘛?

  • 相关阅读:
    3513: [MUTC2013]idiots
    ELK+Filebeat+Kafka+ZooKeeper 构建海量日志分析平台(elk5.2+filebeat2.11)
    【python全栈开发】初识python
    SQL疑难问题
    费用分摊问题
    透过现象看本质
    关于python3round与float的四省五入精度的问题
    Win10下VSCode安装PlantUML
    安装pymssql
    ensorFlow的安装
  • 原文地址:https://www.cnblogs.com/zhaoyansheng/p/4827480.html
Copyright © 2011-2022 走看看