Welcome 微信登录

首页 / 软件开发 / JAVA / Java进阶学习(七) 嵌套类

Java进阶学习(七) 嵌套类2014-08-28到现在为止,我们都是在Java文件中直接定义类。这样的类出现在包(package)的级别上。Java允许类的嵌套定义。

这里将讲解如何在一个类中嵌套定义另一个类。

嵌套

内部类

Java允许我们在类的内部定义一个类。如果这个类是没有static修饰符,那么这样一个嵌套在内部的类称为内部类(inner class)。

内部类被认为是外部对象的一个成员。在定义内部类时,我们同样有访问权限控制(public, private, protected)。

在使用内部类时,我们要先创建外部对象。由于内部类是外部对象的一个成员,我们可以在对象的内部自由使用内部类:

public class Test { public static void main(String[] args) { Human me= new Human("Vamei"); me.drinkWater(0.3); } }class Human { /*** inner class*/private class Cup { public void useCup(double w) { this.water = this.water - w; }public double getWater() { return this.water; }private double water = 1.0; }/*** constructor*/public Human(String n) { this.myCup = new Cup(); this.name= n; }public void drinkWater(double w) { myCup.useCup(w); System.out.println(myCup.getWater()); } private Cup myCup; private String name; }