内部类和外部类变量重名时-
转自:
http://www.java265.com/JavaCourse/202204/3130.html
类简介:
类(Class)是面向对象程序设计(OOP,Object-Oriented Programming)实现信息封装的基础。类是一种用户定义的引用数据类型,也称类类型。每个类包含数据说明和一组操作数据或传递消息的函数。类的实例称为对象
下文笔者讲述内部类和父类变量重名的获取方法分享,如下所示
当外部类和内部类变量重名时 我们此时需要内部类作为一个普通类进行处理,采用this关键字访问变量,如: 外部类.this.外部类成员变量名; this.变量名
例:
//外部类 class Outer { // 外部类成员变量x int x = 888; //成员内部类 class Inner { //内部类成员变量x int x = 999; //内部类的成员方法 public void inner_method() { // 局部变量x int x = 9999; System.out.println("外部类 x=" + Outer.this.x); System.out.println("内部类 x=" + this.x); System.out.println("局部 x=" + x); } } } public class ConstructorCodeDemo{ public static void main(String[] args) { // 创建内部类对象 Outer.Inner oi = new Outer().new Inner(); // 调用内部类方法 oi.inner_method(); } }