zoukankan      html  css  js  c++  java
  • super与this的用法

    1 super和this都是调用其他的构造方法

    super放在构造方法的第一条语句,调用父类的某种构造方法,如果没有super语句,会默认调用父类中无参的构造方法,如果父类构造方法指明而且都有参数,子类中会报错,this调用本类中其他某个构造方法,也要放在构造方法第一行

    2  父类和子类中有相同名字的成员变量时,父类的会被覆盖,如果想使用父类的成员,应该使用super.方法名或者super.对象名

    3 程序中有相同名字的变量时,this可以用来指代当前对象名  

    如  private String name;

    public void setName(String name){

    this.name=name;

    }

    4 super和this不能在同一个构造方法中

    5 super和this都是指代对象,不能在static环境中使用

    6 this代表指向本对象的指针,而super是一个Java关键字
    ————————————————

    super的用法

    准备知识:关键字this

    <1.构造函数传递,this(a,b)表示调用另外一个构造函数;

    <2. 在一个类的非static成员内部使用,表示当前这个对象;

    super和this类似

    <1.调用父类的构造函数;

    <2.在一个类中的非static成员内部使用

    <3. 调用父类的protected函数
    ————————————————

    在python中引入super()的目的是保证相同的基类只初始化一次(注意:

    1super ()机制是用来解决多重继承的,对于直接调用父类名是没有问题的,但在之后根据前人的经验就是:要么都用类名调用,要么就全部用super(),不要混合的用,由此为人做事还是要专一的嘛O(∩_∩)O~

    2 super()继承只能用于新式类,用于经典类时就会报错。
    新式类:必须有继承的类,如果无继承的,则继承object
    经典类:没有父类,如果此时调用super就会出现错误:『super() argument 1 must be type, not classobj)

    参考
    https://blog.csdn.net/u011467044/article/details/52205961

  • 相关阅读:
    JS函数调用的四种方法
    彻底弄懂css中单位px和em,rem的区别
    Image Transformation in WPF输入日志标题
    WPF DATAGRID
    WPF Datagrid multiple selecteditems in MVVM
    WPF ComboBox Binding
    Parameter of Revit API – 19: Add FamilyParameter (FamilyManager.AddParameter)
    The StringFormat property
    How to retrieve instance parameters from an uninstantiated (uninserted) family
    WPF – pass multiple parameters to a Command
  • 原文地址:https://www.cnblogs.com/klb561/p/11366978.html
Copyright © 2011-2022 走看看