java中this关键字含义

this关键字在java中引用当前对象的实例。它有以下作用:1. 从非静态方法中访问对象属性或方法;2. 在构造函数中调用其他构造函数;3. 从静态方法中访问非静态方法;4. 区分局部变量和对象属性;5. 内部类中访问外部类。

java中this关键字含义

this关键字在Java中的含义

简介
this关键字在Java中是一个特殊变量,它引用当前对象的实例。

作用

1. 从非静态方法中访问对象属性或方法:
this关键字允许从非静态(实例)方法中访问当前对象自己的属性或方法。例如:

<code class="java">public class Person {
    private String name;

    public void setName(String name) {
        this.name = name;
    }
}</code>

2. 构造函数中调用其他构造函数:
this关键字还可以在构造函数中用来调用其他构造函数。这使您可以使用不同的参数来初始化对象。例如:

<code class="java">public class Person {
    public Person(String name) {
        this(name, 0);
    }

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }
}</code>

3. 从静态方法中访问非静态方法:
虽然静态方法不能直接访问非静态属性或方法,但可以使用this关键字来调用非静态方法。例如:

<code class="java">public class Person {
    private static void printName(Person person) {
        person.getName();
    }

    public void getName() {
        System.out.println(name);
    }
}</code>

4. 区分局部变量和对象属性:
如果局部变量和对象属性具有相同的名称,则this关键字可以用来明确引用对象属性。例如:

<code class="java">public class Person {
    private String name;

    public void setName(String name) {
        this.name = name;
    }

    public void printName() {
        String name = "局部变量";
        System.out.println(this.name);  // 引用对象属性
    }
}</code>

5. 内部类中访问外部类:
在内部类中,this关键字引用内部类实例,而this.外部类引用外部类实例。例如:

<code class="java">public class OuterClass {
    private String name;

    public class InnerClass {
        public void printName() {
            System.out.println(OuterClass.this.name);
        }
    }
}</code>

以上就是java中this关键字含义的详细内容,更多请关注www.sxiaw.com其它相关文章!