什么是内部类?   内部类是指在一个外部类的内部再定义一个类。内部类作为外部类的一个成员,并且依附于外部类而存在的。内部类可为静态,可用protected和private修饰(而外部类只能使用public和缺省的包访问权限)。内部类主要有以下几类:成员内部类、局部内部类、静态内部类、匿名内部类   内部类的共性   (1)、内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.class文件,但是前面冠以外部类的类名和$符号 。   (2)、内部类不能用普通的方式访问。   (3)、内部类声明成静态的,不能随便的访问外部类的成员变量了,此时内部类只能访问外部类的静态成员变量 。
2021-11-17 18:55:06 90KB 内部类
1
Java内部类的四个应用场景
2021-08-22 09:25:44 46KB Java
1
用抽象类和多态的方式实现一个俄罗斯方块的打印思路: 大体思路就是用随机数来获取俄罗斯方框的形状和类型,然后得到一个二维数组int[][]根据二维数组的点坐标在4x4的 表格里打印黑色实心的方格。 1.我们先构建一个RussianShape的抽象类,在抽象类中写一个int[][] getArray的二维数组的抽象方法, 2.在类内部写七个静态内部类并继承外部类RussianShape,在内部类中重写实现int[][] getArray的方法, 不同的内部类代表不同的形状,并通过switch-case打印出相应的类型。 3.然后创建一个返回值类型是RussianShape的outputArray的静态方法,用switch(shape)-case判断应该返回哪个 RussianShape父类的子类,这一步是用多态的实现的。因为抽象类不能直接创建对象,只能用他的子类创建对象。 4.int[][] array = RussianShape.outputArray().getArray(); 抽象类直接调用静态子类,子类调用返回值是二维数组的静态方法,然后用二维数组接收这个值。 5.最后也是一个难点,利用三重循环打印俄罗斯方块图形,把array当作形参传进去
1
用抽象类和多态的方式实现一个俄罗斯方块的打印思路: 大体思路就是用随机数来获取俄罗斯方框的形状和类型,然后得到一个二维数组int[][]根据二维数组的点坐标在4x4的 表格里打印黑色实心的方格。 1.我们先构建一个RussianShape的抽象类,在抽象类中写一个int[][] getArray的二维数组的抽象方法, 2.在类内部写七个静态内部类并继承外部类RussianShape,在内部类中重写实现int[][] getArray的方法, 不同的内部类代表不同的形状,并通过switch-case打印出相应的类型。 3.然后创建一个返回值类型是RussianShape的outputArray的静态方法,用switch(shape)-case判断应该返回哪个 RussianShape父类的子类,这一步是用多态的实现的。因为抽象类不能直接创建对象,只能用他的子类创建对象。 4.int[][] array = RussianShape.outputArray().getArray(); 抽象类直接调用静态子类,子类调用返回值是二维数组的静态方法,然后用二维数组接收这个值。 5.最后也是一个难点,利用三重循环打印俄罗斯方块图形,把array当作形参传进去
1
Java多态,Java内部类
2021-08-03 21:03:09 9KB 多态 内部类
1