this和super用法

1. this能分清混淆,形参名与当前对象的某个成员有相同的名字,需要明确使用this关键字来指明你要使用某个成员,使用方法是“this.成员名”。

   一般以this.形参数名=形参名,代表送进来赋值的形参数给赋给这个类作为数值

2. 一个类的多种方法之间可以,用“this.方法名”来引用当前类的某个方法,this不用必须写。

 1 public class DemoThis{
 2 private String name;
 3 private int age;
 4 DemoThis(String name,int age){
 5 setName(name); //你可以加上this来调用方法,像这样:this.setName(name);但这并不是必须的,这是调用下面的public void setName(String name)的方                     法,下面setAge(age)一样
 6 setAge(age);
 7 this.print();
 8 } 
 9 public void setName(String name){
10 this.name=name;//此处必须指明你要引用成员变量,字面意思,左边这个类的name被右边的name那么赋值,右边的name从public void setName(string name)获                    得
11 }
12 public void setAge(int age){
13 this.age=age;
14 }
15 public void print(){
16 System.out.println("Name="+name+" Age="+age);//在此行中并不需要用this,因为没有会导致混淆的东西
17 }
18 public static void main(String[] args){
19 DemoThis dt=new DemoThis("Kevin","22");
20 }

3.This表示当前对象。

1 class A  {
2 
3 int  number=50
4 
5 Public void printNum(){ Int number=40; System.out.println(this.number); } 
6 
7 }
8 
9 //此时打印的是实例变量50,而非局部变量,println(this.number)解:打印这个方法/类 的number,这个是指printNum的被赋予的值,50

super用法:

super
.print();有这句就代表调用父类的print()方法,不多说了super.print(mm)同理调用了父类的print(mm)的方法,不是构造方法啊,构造方法用super()形式写的

 

原文地址:https://www.cnblogs.com/liyihome/p/3670194.html