温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java 中的内部类如何使用

发布时间:2020-12-03 17:34:52 来源:亿速云 阅读:134 作者:Leah 栏目:编程语言

这篇文章将为大家详细讲解有关java 中的内部类如何使用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

java 中内部类的实例详解

一:内部类可直接访问外部类的成员变量,包括外部类私有的成员变量  

二:外部类要访问内部类的成员变量,需要建立内部类的对象  

class Outer{ 
   int x=110; 
   public void show(){ 
      System.out.println("外部类的x="+x); 
   } 
  public void showInner(){ 
      Inner inner=new Inner(); 
      inner.show(); 
      System.out.println(inner.x); 
   }  
  class Inner{//内部类 
    int x=220; 
    public void show(){ 
         System.out.println("内部类的x="+x); 
      } 
  } 
} 
 
 
 
public class OuterDemo { 
   public static void main(String[] args) { 
     Outer outer=new Outer(); 
     outer.show(); 
     outer.showInner(); 
     Outer.Inner outerInner=new Outer().new Inner();//特殊情况.外部类直接访问内部类成员变量 
     outerInner.show(); 
   } 
 
} 

内部类之所以可以直接访问外部类的成员变量,是因为内部类持有外部类的引用。格式:外部类名.this 

如:System.out.println("x="+Outer.this.x);//访问外部类的x  

class Outer{ 
   int x=110; 
   class Inner{ 
     int x=220; 
     public void show(){ 
        int x=330; 
        System.out.println("x="+x);//访问show()中的x 
        System.out.println("x="+this.x);//访问内部类的x 
        System.out.println("x="+Outer.this.x);//访问外部类的x 
 
     } 
   } 
  void showInner(){ 
     Inner inner=new Inner(); 
     inner.show(); 
  } 
} 
 
 
 
public class OuterDemo { 
    public static void main(String[] args) { 
      Outer outer=new Outer(); 
      outer.showInner(); 
     
    } 
 
} 

在内部类(一)和内部类(二)中,内部类都是作为全局变量出现的即定义在了类里  ,在此奖内部类定义为局部变量,即定义在方法里.尤其注意:此时内部类要想访问局部变量,那么此  局部变量必须是被final修饰的,如此处的y  

 package cn.com; 
class Outer { 
   int x = 110; 
   public void show() { 
      final int y=99; 
      class Inner {// 内部类 
       int x = 880; 
       public void showInner() { 
         System.out.println("局部变量y=" + y); 
        } 
      } 
   new Inner().showInner(); 
   } 
 
} 
 
public class OuterDemo { 
   public static void main(String[] args) { 
      Outer outer = new Outer(); 
      outer.show(); 
   } 
 
} 

关于java 中的内部类如何使用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI