lass Day10_11 { public static void main(String[] args) { Outer.Inner oi = new Outer().new Inner(); oi.print(); } } class Outer { public int num = 10; class Inner { public int num = 20; public void print(){ int num = 30; System.out.println(num);//本方法中的局部变量 System.out.println(this.num);//内部类中的成员变量 System.out.println(Outer.this.num);//外部类中的成员变量 } } } --------------------- 本文来自 TT海浅 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/u010698072/article/details/52093355?utm_source=copy
出
如果只有一个num变量,那么完全就不用理会这么多了,直接num它就会自动搜索到
相关推荐
它可以访问外部类的所有成员(包括私有成员),同时也可以被外部类所访问。 2. **静态成员变量**:静态成员变量是类级别的变量,可以通过类名直接访问,不需要创建类的实例。 3. **反射**:反射是在运行时检查类、...
内部类可以访问外部类的所有成员,包括私有变量和方法,这为代码的封装和组织提供了更多灵活性。本篇将深入探讨内部类的使用以及如何通过其他方式模拟内部类的效果。 首先,我们有四种类型的内部类:成员内部类、...
源码示例中应该包含了各种内部类的使用场景,通过阅读和理解这些代码,初学者能够更好地掌握内部类的工作原理和使用方法。同时,文档部分可能还涵盖了如何选择合适的内部类类型、如何避免常见的陷阱以及如何优化内部...
这表明私有方法只能在其定义的类内部访问。 ### 受保护(Protected) `protected` 修饰符介于 `public` 和 `private` 之间,它允许类的子类访问其父类中的受保护成员,但不允许外部直接访问。这意味着即使不是子类...
4. **内部类访问外部类**:非静态成员内部类可以通过`this`关键字访问外部类中的成员变量和方法。如果外部类的方法中存在同名变量,则可以通过`外部类.this.变量`的方式访问外部类的成员变量。 #### 三、静态成员...
内部类可以访问外部类的所有成员变量和方法,包括私有成员变量和方法。内部类可以分为两种:静态内部类和非静态内部类。 1. 静态内部类 静态内部类是指在一个静态上下文中定义的内部类。静态内部类可以访问外部类...
2. **访问限制**:静态内部类只能访问外部类的静态成员(包括变量和方法),而不能访问外部类的非静态成员。这是因为静态内部类并不依赖于外部类的实例,因此不能访问非静态成员。 3. **命名空间**:静态内部类和...
这意味着静态成员类并不依赖于外部类的实例化就可以独立存在,并且可以访问外部类的所有静态成员变量和静态方法,但不能直接访问外部类的非静态成员变量和方法。 **2.1 静态成员类的特性** - **访问控制**:静态...
- 局部内部类可以直接访问外部类的成员,并且可以访问该方法中的局部变量,但这些局部变量必须是最终的(`final`)或者本质上不可变的。 **5. 匿名内部类:** - 匿名内部类是没有名称的内部类,通常用于实现接口或...
成员内部类(也称为非静态内部类)是定义在一个外部类中的成员类,它可以访问外部类的所有成员变量和方法,包括私有成员。成员内部类的一个显著特点是它与外部类有着密切的联系,这使得它非常适合用来表达一种“整体...
3. 内部类声明成静态的,就不能随便的访问外部类的成员变量了,此时内部类只能访问外部类的静态成员变量。 4. 外部类不能直接访问内部类的成员,但可以通过内部类对象来访问。 二、内部类的分类 1. 成员内部类:即...
成员内部类可以直接访问外部类的属性和方法,即使是private类型也可以访问。这是因为内部类持有一个外部类的引用,可以自由访问。成员内部类中不能存在任何静态变量和静态方法。 局部内部类是定义在一个方法或者一...
- **成员内部类**:这种类型的内部类是定义在外部类的一个成员位置上,它可以访问外部类的所有成员变量和方法。 - **静态内部类**:也称为静态嵌套类,这种内部类通过`static`关键字修饰,不能直接访问外部类的实例...
它们没有访问外部类的实例变量或方法的能力,除非它们是静态的。嵌套顶级类可以通过外部类名访问。 2. **成员内部类(Instance Inner Classes)**:成员内部类是定义在一个类内部的非静态类。它们可以访问外部类的...
内部类的主要优点是能够方便地访问外部类的私有成员,提供了更封装的代码组织方式,以及创建特定上下文的类实例。下面将详细讨论内部类的种类、访问规则以及使用场景。 1. **非静态内部类(成员内部类)** - 成员...
在JavaScript中,闭包(Closure)是一个极其关键的概念,它使得内部函数能够访问到其外部函数的作用域内的变量,即使外部函数已经执行完毕。这一特性是基于JavaScript的函数作用域规则以及函数本身可以作为值进行...
实例内部类是成员内部类的一种,它没有static修饰符,这意味着每个外部类的实例都可以有自己的实例内部类对象,且实例内部类的对象可以访问外部类的实例变量和方法。在`A`类的`B`内部类示例中,`B`可以直接访问`A`的...
这种设计模式提供了更为灵活的编程机制,可以更加方便地访问外部类的成员变量和方法。根据内部类的不同特性,可以将其分为以下几类: 1. **成员内部类**:定义在类中的内部类。 2. **静态内部类**:使用 `static` ...
在示例3中,`LocalInnerClassTest`类的`main()`方法内定义了一个局部内部类`InnerClass`,并使用`final`变量`a`,然后在方法内部创建并调用了`InnerClass`的方法。 4. 匿名内部类(Anonymous Inner Class) 匿名...