温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java Subclass子类内部类类型

发布时间:2025-11-08 15:32:28 来源:亿速云 阅读:89 作者:小樊 栏目:编程语言

在Java中,子类(Subclass)和内部类(Inner Class)是两个不同的概念。让我们分别了解一下它们的定义和用法。

  1. 子类(Subclass): 子类是继承自另一个类的类。当一个类继承了另一个类的属性和方法时,我们称这个类为子类。子类可以访问父类的public和protected成员,但不能访问private成员。子类的定义如下:
class Parent {
    // 父类的属性和方法
}

class Child extends Parent {
    // 子类的属性和方法
}

在这个例子中,Child 类继承了 Parent 类,所以 ChildParent 的子类。

  1. 内部类(Inner Class): 内部类是定义在另一个类内部的类。内部类可以访问外部类的所有成员(包括private成员)。内部类有四种类型:
  • 非静态内部类(Non-static Inner Class):这是最常见的内部类类型,它可以访问外部类的所有成员。要创建非静态内部类的实例,需要先创建外部类的实例。
class Outer {
    class Inner {
        // 内部类的属性和方法
    }
}
  • 静态内部类(Static Inner Class):静态内部类不能访问外部类的非静态成员。要创建静态内部类的实例,不需要创建外部类的实例。
class Outer {
    static class Inner {
        // 静态内部类的属性和方法
    }
}
  • 局部内部类(Local Inner Class):局部内部类定义在方法或代码块内部,它的作用范围仅限于该方法或代码块。
class Outer {
    void someMethod() {
        class LocalInner {
            // 局部内部类的属性和方法
        }
    }
}
  • 匿名内部类(Anonymous Inner Class):匿名内部类没有类名,通常用于实现接口或继承类的子类。匿名内部类的语法是在创建对象时直接定义类。
class Outer {
    void someMethod() {
        Runnable runnable = new Runnable() {
            @Override
            public void run() {
                // 匿名内部类的属性和方法
            }
        };
    }
}

总结一下,子类是继承自另一个类的类,而内部类是定义在另一个类内部的类。内部类有四种类型:非静态内部类、静态内部类、局部内部类和匿名内部类。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI