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

  • 相关阅读:
    CentOS6.5卸载自带的Mysql软件
    Oracle 监听hang住
    mysql忘记root登录密码
    根据linux自带的JDK,配置JAVA_HOME目录
    nbu还原集群数据库异常问题
    Oracle11g RAC安装
    linux系统安装步骤
    oracle11g安装补丁升级
    linux系统安装Oracle11g详细步骤
    Express之Hello World示例
  • 原文地址:https://www.cnblogs.com/zhaoyansheng/p/4827480.html
Copyright © 2011-2022 走看看