码迷,mamicode.com
首页 > 编程语言 > 详细

Java

时间:2019-06-28 22:36:34      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:order   注意   font   实战   对象   保留   名称   需要   方法   

this关键词

1,this调用本类属性

在程序里面是有this可以实现以下三类的结构的描述:

·当前类中的属性:this.属性;

·当前类中的方法(普通方法、构造方法):this()this.方法名称();

·描述当前对象;【最为麻烦的一部分】

如果说现在构造方法中的参数名称修改为nameage,则发现无法进行属性的正确设置:

public Person(String name,int age){
    name=name;
    age=age;
}

Java程序之中【{}】是作为一个结构体的边界符,那么程序里面当进行变量(参数、属性都称为变量)使用的时候都会以【{}】作为一个查找边界,所以按照就近取用的原则,此时的构造方法并没能够访问类中的属性,所以此时为了明确标记出类中的属性与参数的区别,往往会在属性前追加一个【this】表示本类属性;

在以后程序开发过程中,只要是访问本类中的属性的时候,请一定要加上【this】实现访问。

 

2,this调用本类方法

·构造方法调用【this()】:使用关键字new 实例化对象的时候才会调用构造方法;

·普通方法调用【this.方法名称()】:实例化对象产生之后就可以调用我们的普通方法。

·范例:this调用构造方法

public Person() {
}
public Person(String name){
    this();
    this.name=name;
}
public Person(String name,int age){
    this(name);
    this.age=age;
}

 

·范例:this调用普通方法

public Person() {
    System.out.println("无参构造");
}
public Person(String name){
    this();
    System.out.println("单参构造");
    this.setName(name);
}
public Person(String name,int age){
    this(name);
    System.out.println("两参构造");
    this.setAge(age);
}

注意:·this()需要在构造方法的首行;

 ·构造方法互相调用时请保留有程序的出口,别形成死循环。会出现错误,方法的递归调用

 

3,综合实战:简单Java

就是一个类,有属性及其settergetter方法,实例化构造方法,普通方法。

 

 

 

Java

标签:order   注意   font   实战   对象   保留   名称   需要   方法   

原文地址:https://www.cnblogs.com/Mufasa/p/11105036.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!