美文网首页Java学习
Java中有关创建内部类的讨论

Java中有关创建内部类的讨论

作者: FFJ | 来源:发表于2018-05-19 18:02 被阅读0次

外部类名称.内部类名称 对象名 = new 外部类名称().new 内部类名称();

package guanka01.test02;

public class Car {
    private boolean status;

    class Engine {
        public void work() {
            if (status) {
                System.out.println("发动机飞速旋转");
            } else {
                System.out.println("发动机停止工作");
            }
        }
    }

    public Car() {
        super();
    }

    public Car(boolean status) {
        super();
        this.status = status;
    }

    public boolean isStatus() {
        return status;
    }

    public void setStatus(boolean status) {
        this.status = status;
    }

}
////////////////////////////////////////////////////////////////////////////////////////
package guanka01.test02;

import guanka01.test02.Car.Engine;

public class Test {
    public static void main(String[] args) {
        Car.Engine engine = new Car().new Engine();
    }
}

这种方式创建的内部类,可以正常使用外部类的成员变量,但是由于外部类是匿名的,无法更新外部类的数据。

用外部类的对象创建内部类

package guanka01.test02;

import guanka01.test02.Car.Engine;

public class Test {
    public static void main(String[] args) {
        Car car = new Car();
        Engine engine2 = car.new Engine();
        engine2.work();
        car.setStatus(true);
        engine2.work();     
    }
}

需要导包,格式为: import 外部类所在包完整形式.内部类名;
也可以不导包,用Car.Engine engine2 = car.new Engine(); 的形式

内部类和外部类是有关联的。而且car和engine2可以分别对自己的成员变量和成员方法作出一些操作。

相关文章

  • Java中有关创建内部类的讨论

    外部类名称.内部类名称 对象名 = new 外部类名称().new 内部类名称(); 这种方式创建的内部类,可以正...

  • PHP转JAVA的记录

    Java 数组 内部类 内部类的创建:内部类可以对包内其他类隐藏想实现一个接口时, 不想新建类文件 内部类可以访问...

  • java学习笔记(十三)内部类

    1、概述 内部类即在类的内部在创建一个类 分为成员内部类(直接在类中创建) 局部内部类(在成员方法中创建) 匿名内...

  • Java 中的方法内部类

    Java 中的方法内部类 方法内部类就是内部类定义在外部类的方法中,方法内部类只在该方法的内部可见,即只在该方法内...

  • kotlin关键字-inner

    inner关键字让内部类可以持有外部类的引用 (在java中,内部类默认创建是可以访问外部类的,kotlin需要显...

  • Java 内部类、静态内部类、方法内部类(未完待续)

    内部类 什么是内部类?内部类其实就是在一个类中创建的类。内部类有四种: 成员内部类 静态内部类 局部内部类 匿名内...

  • java-内部类的创建

    java 创建内部类时离不开他的外围类,除非内部类是嵌套类(即静态内部类),嵌套类中的内部类也是如此 比如: pu...

  • Java 内部类

    内部类包括成员内部类、方法内部类、*静态内部类、匿名内部类*。 内部类的作用 由于内部类的实现和外部类没有关系,内...

  • 内部类

    内部类 1.可以访问访问其外部类所有属性和方法,无需创建外部类对象 2.必须创建内部类对象,否则无法从外部类访问内...

  • 为什么内部类中访问局部变量,局部变量需要final修饰

    java内部类 原因是:因为局部变量和匿名内部类的生命周期不同。 匿名内部类是创建后是存储在堆中的 而方法中的局部...

网友评论

    本文标题:Java中有关创建内部类的讨论

    本文链接:https://www.haomeiwen.com/subject/spdadftx.html