this和super的区别

本文详细解释了Java中this和super关键字的使用方法及其应用场景。this关键字用于区分局部变量与成员变量,super关键字则用于调用父类的构造方法或访问父类成员。通过实例演示了如何在继承关系中正确使用这两个关键字。

java里的this和super 方法 一般是出现在 函数调用 或者 对象继承之中的。

this 表明是当前函数中的变量, 一般是用在 形参和 自身参数的 命名存在相同的构造的时候

比如

public int multiple(int x){

      int x;

      return x*this.x;

}

这里的this  就将 形参和 方法中的实参 区分了开来,注意在 没有这样的情况的时候 要慎用,可能会引起混乱。

super方法一般是用在类继承的时候,表明引用的是父类的方法或者全局参量。

这个方法可以证明在类继承的时候,子类的同名方法并没有覆盖掉父类的方法,继承只是通过GVN的链接实现的。

一般有两种用法。

class person{

   public tring name=“”;

   public person(){

     name = “1“;
   }
   public person(String str){

      name=str;

   }

   public void static print(){

       System.out.println(name);

   }

}

 

public class chinese extends person{

      public void print(){

          System.out.println("chinese");

          super();                    

          super.print();

          super("2");

           super.print();

      }

      public void main(String[] args){
            print();

      }

}

 

如上 1种是 super 直接用带上形参 这样相当于 利用了父类中的 构造器;

     另外一种 就是 用super  标注出来是用了 父类中的 方法。

 

参考资料:http://blog.youkuaiyun.com/yihuei123/archive/2007/06/04/1637893.aspx

         

      

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值