21xrx.com
2025-03-29 03:50:11 Saturday
文章检索 我的文章 写文章
Java内部类的方法详解,附带编程案例
2023-06-12 13:38:20 深夜i     12     0
Java 内部类 成员内部类

Java内部类是指在一个类体内定义的另一个类,内部类与外部类之间可以互相访问彼此的私有成员。内部类的一个优点是可以访问外部类的私有成员,这些成员对于外部类的其他类而言是不可访问的。本文将详细介绍Java内部类的使用方法,并且附带一个简单的Java内部类编程案例。

内部类的三种类型

内部类可以分为三种类型:

1. 成员内部类

成员内部类是定义在另一个类的内部的类。在外部类的实例化对象外实例化内部类,即先要实例化外部类,再来实例化内部类。

2. 局部内部类

局部内部类是定义在方法内或者代码块内的类,仅在定义它的块内有效。目前仅允许访问final类型的变量。

3. 静态内部类

静态内部类是被声明为静态型的内部类,它的行为和成员变量与静态变量类型类似,即它们在类初始化时已被初始化,而不是在调用相应的构造方法时初始化。

内部类的语法

内部类的基本语法与类相似,但是多了一层“{}”表示是内部类。

// 创建成员内部类的语法格式
class OuterClass {
  class InnerClass
    ...
  
}
// 创建静态内部类的语法格式
class OuterClass {
  static class InnerClass
    ...
  
}

案例:Java内部类的使用

用 Java 代码编写一个简单的例子,演示如何在程序中使用Java内部类。

public class OuterClass {
  private String outerName;
  // 创建私有成员变量 outerName
  public OuterClass()
    this.outerName = "This is outer class!";
  
  public class InnerClass {
    public void printInnerName() {
      System.out.println("The inner name is " + outerName);
    }
  }
  // 创建成员内部类,并且访问外部类的私有成员变量
  public static void main(String[] args) {
    OuterClass outer = new OuterClass();
    OuterClass.InnerClass inner = outer.new InnerClass();
    
    // 创建外部类和内部类的实例化对象
    inner.printInnerName();
  }
 
  // 输出结果为:The inner name is This is outer class!
}

以上代码演示了如何在 Java 中创建一个内部类,并访问外部类的私有成员变量。在这种情况下,将创建OuterClass的新实例并使用它调用所需的方法可实现这个目标。

  
  

评论区