zoukankan      html  css  js  c++  java
  • Python面试题之Python和Java中Super方法的区别

    python 的 super 是一个函数,需要两个参数,第一个参数是类,第二个参数是实例,返回值是一个类对象。

    其意义是:站在参数2这个实例的角度看去, 参数1这个类的‘父亲’是谁,把‘父亲’返回。

    详情见这里。

    Java 的 super 是一个引用,即一个指针,它指向的是本类内部的那个父类对象。

    可以用 super.xxx 来访问父类的成员变量或成员函数。

    另外 Java 的 super 有一个特殊用法,就是 super(args),看起来像个函数似的,其实不是。

    这种特殊用法只限于写在构造函数的第一行,用来显示的调用父类的构造方法。 

    因为构造方法是无法通过对象加点操作法来调用的,即 super.FaterConstructor() 是不合法的,所以 Java 用 super() 这种方式调用父类构造方法。

    Java 对子类的构造方法的要求请看这里


    =================================

    Java 中想调用父类的方法,直接用 super.method() 即可

    Python 中想调用父类的方法,需要用 super(本类名,self).method()

    Java 如果想调用父类的构造方法,要用 super()

    Python 调用父类的构造方法跟普通方法一样的,super(本类名,self).__init()__

    参考

  • 相关阅读:
    gitlab11.5.4 配置邮件提醒
    docker 安装 mongodb
    dd测试
    k8s部署rocketmq 双主
    rocketmq 多master集群部署
    Kubernetes中的Taint污点和Toleration容忍
    Zookeeper分布式集群搭建
    初识ZooKeeper
    hdu 5071(2014鞍山现场赛B题,大模拟)
    hdu 5073
  • 原文地址:https://www.cnblogs.com/JetpropelledSnake/p/9203699.html
Copyright © 2011-2022 走看看