`

内部类了解

    博客分类:
  • java
 
阅读更多
注意:匿名内部类是唯一一种无构造方法类。
       注:这是因为构造器的名字必须合类名相同,而匿名内部类没有类名。
           匿名内部类在编译的时候由系统自动起名Out$1.class。

内部类分为四种:

1.成员内部类
2.局部内部类
3.静态内部类
4.匿名内部类

1.成员内部类
//成员内部类......相当于非静态方法 
class MemberInner { 
     private int a = 3;
     public class Inner2 {
        private int a = 2;

        public void doSomething() {
           
            System.out.println(MemberInner.this.a);
            System.out.println(a);
        }
    }

} 

public class Test3 {
    public static void main(String[] args) {
        MemberInner.Inner2 inner2 = new MemberInner().new Inner2();
        inner2.doSomething();
    }
}



2.静态内部类
class StaticInner{
    private static int a=3;
    public static class Inner{
        public void test(){
            System.out.println(a);
        }
    }
}

public class Test2 {
    public static void main(String[] args) {
        StaticInner.Inner inner=new StaticInner.Inner();//静态内部类直接调用
        inner.test();
    }
}



3.局部内部类
class LocalInner {
    public void doSomething(int b) {
        final int a = 3;// 只能访问final的变量
        class Inner3 {
            public void test(int b) {
                System.out.println(b);
                System.out.println(a);
            }
        }
        new Inner3().test(b);
    }
}

public class Test4 {
    public static void main(String[] args) {
        LocalInner inner = new LocalInner();
        inner.doSomething(4);
    }
}




4一个关于匿名内部类的例子:
public class test{
   public static void main(String[] args){
       B.print(new A(){
            public void getConnection(){
               System.out.println("Connection....");
            }
       });
   }
}
interface A{
    void getConnection();
}
class B{
    public static void print(A a){
    a.getConnection();
    }
}
分享到:
评论

相关推荐

    内部类 匿名内部类 内部接口 对比说明

    首先,让我们了解一下内部类的基本概念。内部类定义在其他类的内部,编译后会生成两个独立的类文件。内部类能够自由地访问外部类的所有成员,包括私有成员,而外部类无法直接访问内部类的成员。这种特性使得内部类...

    浅谈内部类与静态内部类的应用

    首先,我们来了解内部类的基本概念。内部类可以分为四类:成员内部类、局部内部类、匿名内部类和静态内部类。在这里,我们重点关注成员内部类和静态内部类。 成员内部类,就像它的名字一样,是类的一个成员,与字段...

    Java内部类总结

    ### Java内部类总结 在Java编程语言中,内部类是一个重要的概念,它允许开发者在一个类的内部定义另一个类。这种特性极大地增强了代码的封装性和...了解内部类的各种特性和用法对于成为一名优秀的Java程序员至关重要。

    JAVA内部类总结

    ### JAVA内部类总结 在Java编程语言中,内部类(Inner ...每种内部类都有其特定的应用场景,了解它们的特点和区别对于编写高质量的Java代码至关重要。希望本文能帮助开发者更好地理解和应用Java内部类的相关知识。

    从零开始学JAVA第12章_内部类.ppt

    Java内部类 Java内部类是Java编程语言中的一种特殊的类,它定义在另一个类的内部。内部类可以访问外部类的成员变量和成员方法,同时也可以被外部类访问。...了解内部类的使用可以帮助开发者编写更加灵活和高效的代码。

    第十章 内部类

    在"第十章 内部类"中,我们将深入探讨这个主题,了解内部类的种类、用法以及它们在实际开发中的应用。 首先,内部类可以分为四类:成员内部类、局部内部类、匿名内部类和静态内部类。成员内部类就像是外部类的一个...

    java和kotlin的内部类静态嵌套类

    首先,我们来了解Java中的内部类。Java内部类是一种定义在另一个类内部的类,它可以访问外部类的所有成员,包括私有成员。内部类分为四种类型:成员内部类、局部内部类、匿名内部类和静态嵌套类。其中,静态嵌套类是...

    接口,内部类,抽象类概念和区别

    内部类分为四种类型:成员内部类、局部内部类、匿名内部类和静态内部类。成员内部类就像普通的类成员,可以有自己的访问修饰符;局部内部类只存在于方法或块的范围内;匿名内部类通常用于快速创建一个简单的类实例,...

    关于内部类的整理 内部类.xmind

    内部类是Java编程语言中一个独特且强大的特性,它允许我们在一个类的内部定义另一个类。这个主题在软件开发中尤为重要,特别是在设计复杂的...对于初学者而言,了解和掌握内部类的概念和用法是提升编程技能的关键步骤。

    内部类示例

    内部类是Java编程语言中一个独特且强大的特性,它允许我们在一个类的内部定义另一个类。内部类可以访问外部类的所有成员,包括私有变量和...了解和熟练掌握内部类及其替代方法,对于提升代码质量和可维护性至关重要。

    java 利用反射获取内部类静态成员变量的值操作.docx

    通过本文的学习,我们了解了如何使用Java反射技术来获取内部类中的静态成员变量的值。反射技术虽然强大,但也需要注意其使用场景和可能带来的负面影响。希望本文能帮助大家更好地理解和掌握Java反射技术的应用。

    java内部类使用例子

    在"10-8内部类"这个压缩包文件中,很可能包含了以上各种内部类类型的示例代码,通过运行这些代码,你可以更直观地了解它们的用法和功能。学习并熟练掌握内部类的使用,能帮助你编写更加灵活和高效的Java代码。

    java 成员内部类的使用规范

    Java成员内部类是一种在类内部定义的类,它可以访问外部类的所有成员,包括私有成员。成员内部类的使用在Java编程中具有独特的价值,它能够帮助我们更好地封装代码,提高代码的组织性和可读性。以下是关于Java成员...

    接口中的内部类.pdf

    首先,让我们了解接口中的普通成员内部类。在接口中定义一个普通成员内部类(非抽象类),意味着这个内部类将作为接口的一部分,任何实现该接口的类都可以访问并使用它。下面是一个简单的示例: ```delphi type ...

    java中内部类的分类及用法.pdf

    从这段代码中可以了解到,内部类(Inner)可以直接访问外部类(Outer)的成员变量(index),而外部类想要访问内部类的成员变量时,则需要创建内部类的实例。同时,内部类的实例可以有自己的同名成员变量,这些变量...

    Java内部类:你真得了解方法内部类吗?

    文章目录Java内部类:你真得了解方法内部类吗?普通内部类方法内部类匿名内部类静态内部类参考Thinking in Java Java内部类:你真得了解方法内部类吗? java内部类,相信很多人都使用过内部类,新建线程使用的匿名...

    Java内部类访问规则.doc

    了解内部类的各种类型及其访问规则对于编写高效、易于维护的Java程序至关重要。无论是静态内部类、局部内部类还是匿名内部类,每种类型的内部类都有其独特的用途和应用场景。通过掌握这些规则,开发者可以更加有效地...

    Android学习之内部类

    根据定义方式和使用场景的不同,内部类主要可以分为四种类型:常规内部类、局部内部类、匿名内部类以及静态嵌套类。 #### 二、常规内部类 常规内部类是最常见的内部类形式之一。它是指在其他类内部定义的非静态类...

    JavaDemo14032003(内部类).zip

    首先,我们来了解一下**普通内部类**。普通内部类是定义在另一个类的定义体内的类,它可以作为外部类的一个成员存在。例如: ```java public class OuterClass { private int outerField = 10; class Inner...

    内部类详解,看了他就不用看其他资料了

    内部类是Java编程中一个独特的特性,它允许我们在一个类的内部定义另一个类。这种设计模式在处理某些特定情况,如事件监听、匿名类...通过上述内容,你应该能对Java的内部类有一个全面的了解,不再需要寻找额外的资料。

Global site tag (gtag.js) - Google Analytics