Java内部类继承外部类
在Java中,内部类是指定义在另一个类内部的类。内部类可以直接访问外部类的私有属性和方法,同时也可以继承外部类。内部类和外部类之间的关系通常是一个包含关系,即外部类是内部类的容器。在本文中,我们将讨论Java内部类继承外部类的用法,并提供相应的代码示例。
内部类继承外部类的用法
内部类继承外部类的语法格式如下:
public class Outer {
private int outerField;
public class Inner extends Outer {
private int innerField;
public Inner(int outerField, int innerField) {
this.outerField = outerField;
this.innerField = innerField;
}
public void display() {
System.out.println("Outer field: " + outerField);
System.out.println("Inner field: " + innerField);
}
}
}
在上面的代码中,内部类Inner继承了外部类Outer。内部类Inner中可以访问外部类Outer的私有属性outerField,并且还可以定义自己的私有属性innerField。内部类Inner还定义了一个display方法,用于显示外部类和内部类的属性值。
内部类继承外部类的代码示例
下面我们通过一个完整的示例来演示内部类继承外部类的用法:
public class Outer {
private int outerField;
public class Inner extends Outer {
private int innerField;
public Inner(int outerField, int innerField) {
this.outerField = outerField;
this.innerField = innerField;
}
public void display() {
System.out.println("Outer field: " + outerField);
System.out.println("Inner field: " + innerField);
}
}
public static void main(String[] args) {
Outer outer = new Outer();
Outer.Inner inner = outer.new Inner(10, 20);
inner.display();
}
}
在上面的代码中,我们首先创建了一个外部类Outer的实例outer,然后通过outer.new Inner()创建了内部类Inner的实例inner,并传入了外部类和内部类的属性值。最后调用了内部类Inner的display方法,输出了外部类和内部类的属性值。
状态图
下面是内部类继承外部类的状态图示例:
stateDiagram
OuterClass --* InnerClass
在上面的状态图中,OuterClass表示外部类,InnerClass表示内部类。状态图中的"--*"表示外部类和内部类之间的包含关系,即外部类是内部类的容器。
饼状图
下面是内部类继承外部类的饼状图示例:
pie
title Java内部类继承外部类
"OuterClass" : 50
"InnerClass" : 50
在上面的饼状图中,我们可以看到外部类和内部类的比例都是50%,表示它们之间是平等的关系。
结论
通过本文的介绍,我们了解了Java内部类如何继承外部类的方法,并通过代码示例演示了其用法。内部类继承外部类可以方便地访问外部类的私有属性和方法,同时也可以定义自己的属性和方法。希望本文对您有所帮助,谢谢阅读!