`
Eros_李
  • 浏览: 7171 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

Java中的静态内部类

    博客分类:
  • Java
阅读更多
  • 定义:静态内部类是 static 修饰的内部类

  • 代码:
    //外部类
    public class HelloWorld {
        
        // 外部类中的静态变量score
        private static int score = 84;
        // 外部类中的静态变量a
        private static int a = 78;
        // 外部类中的非静态变量b
        private int b = 86;
        
        // 创建静态内部类
    	public static class SInner {
            // 内部类中的变量score
            int score = 91;
            
    		public void show() {
    			System.out.println("访问外部类中的score:" +HelloWorld.score);
    			System.out.println("访问内部类中的score:" + score);
                System.out.println("访问外部类中的a:" + a); 
                System.out.println("访问外部类中的b:" + new HelloWorld().b);
    		}
    	}
    
    	// 测试静态内部类
    	public static void main(String[] args) {
    		// 直接创建内部类的对象
            SInner si = new SInner();
            // 调用show方法
    		si.show();
    	}
    }
     
  • 运行结果:
    访问外部类中的score:84
    访问内部类中的score:91
    访问外部类中的a:78
    访问外部类中的b:86

  • 特点:

    1、 静态内部类不能直接访问外部类的非静态成员,但可以通过 new 外部类().成员 的方式访问 

    2、 如果外部类的静态成员与内部类的成员名称相同,可通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不相同,则可通过“成员名”直接调用外部类的静态成员

    3、 创建静态内部类的对象时,不需要外部类的对象,可以直接创建 内部类 对象名= new 内部类();


分享到:
评论

相关推荐

    java静态内部类(嵌套类)

    ### Java静态内部类(嵌套类)详解 #### 一、静态内部类概念与特性 在Java编程语言中,静态内部类(也被称为嵌套类)是一种特殊的内部类形式,它通过`static`关键字来定义。与普通内部类相比,静态内部类具有以下...

    java 静态内部类的使用规范

    Java语言中的静态内部类,也称为嵌套类,是内部类的一种特殊形式,它与非静态内部类(也称为成员内部类)相比有着独特的特点和使用场景。在深入探讨其使用规范之前,我们先理解静态内部类的基本概念。 静态内部类不...

    15.java静态内部类(相当于外部类).zip

    15.java静态内部类(相当于外部类).zip15.java静态内部类(相当于外部类).zip15.java静态内部类(相当于外部类).zip15.java静态内部类(相当于外部类).zip15.java静态内部类(相当于外部类).zip15.java静态内部...

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

    然而,无论是在Java还是Kotlin中,合理使用内部类和静态嵌套类都能有效地提高代码的可读性和可维护性。 在移动开发中,特别是Android应用开发,内部类和静态嵌套类经常用于实现回调、事件监听、以及封装与特定组件...

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

    本文将详细介绍如何使用Java反射技术来获取内部类中的静态成员变量的值。 #### 二、背景知识 在深入探讨之前,我们需要了解几个基本概念: 1. **内部类**:内部类是一种特殊的类,定义在另一个类(外部类)的内部。...

    java代码笔记2010-06-01:Java内部类 静态内部类 局部内部类 明明内部类;StringBuffer reverse的使用;

    内部类可以分为四种类型:静态内部类、成员内部类(非静态内部类)、局部内部类和匿名内部类。 1. **静态内部类**: 静态内部类与普通的成员内部类不同,它不持有对外部类的引用。因此,可以像其他静态成员一样,...

    Java中的静态内部类详解及代码示例

    Java中的静态内部类详解及代码示例 Java中的静态内部类是一种特殊的内部类,它可以独立于外部类存在,具有自己的生命周期。静态内部类的定义形式如下: public class OuterClass { static class StaticInnerClass...

    静态内部类

    静态内部类是一种在Java中非常有用的特性,它允许在不依赖外部类实例的情况下访问外部类的静态成员。这种特性使得静态内部类在多种场景下都能发挥重要作用,例如在提高性能、优化内存使用以及简化API设计等方面。...

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

    总之,内部类和静态内部类是Java中独特的类设计方式,它们提供了灵活的代码组织和访问控制手段。成员内部类适合处理需要紧密关联的情况,而静态内部类则适用于实现工具类或辅助功能,并且在单例模式中有独特的优势。...

    深入浅析Java中Static Class及静态内部类和非静态内部类的不同

    Java中的静态内部类(Static Class),也称为嵌套静态类,是Java语言提供的一种独特机制,它允许我们在一个外部类内部定义一个静态的类。这种类的声明前面带有`static`关键字,与普通的内部类(非静态内部类)有所...

    Java SE 静态内部类的使用(csdn)————程序.pdf

    Java SE中的静态内部类是一种特殊的内部类,它与非静态内部类(也称为成员内部类)有着显著的区别。静态内部类并不需要外部类的实例来创建它的对象,而是可以直接通过类名进行实例化,就像普通的类一样。在给定的...

    Java单例模式实现静态内部类方法示例

    在Java中,单例模式可以通过多种方式实现,包括懒汉式、饿汉式、双重检查锁定和静态内部类方法等。今天,我们主要介绍了Java单例模式实现静态内部类方法示例,涉及构造函数私有化等相关内容。 单例模式的定义 单例...

    Java的内部类讲解案例代码(成员内部类、局部内部类、匿名内部类、静态内部类、外部类访问四种内部类、其他类访问四种内部类...)

    - 不同类型的内部类(静态内部类、成员内部类、局部内部类和匿名内部类)的区别和用法 - 内部类的优缺点以及使用场景 这些目标将帮助你理解和掌握内部类的概念,并能够在适当的时候使用内部类来解决问题...

    Handler对象中使用匿名内部类或非静态内部类正确地释放消息避免内存泄漏或增加Native内存

    在Android中,如果一个对象被非静态内部类引用,而这个内部类又被一个长时间存在的对象(如Activity)持有,即使Activity已经不再使用,由于这个引用关系,Activity也无法被垃圾回收,从而造成内存泄漏。 为了解决...

    内部类的相关知识-静态内部类,匿名内部类……

    本文详细介绍了 Java 中内部类的各种类型及其使用场景,包括静态内部类、非静态内部类、局部内部类以及匿名内部类。每种类型的内部类都有其独特的特性和应用场景,理解这些差异对于更高效地利用 Java 语言特性至关...

    Java 深入理解嵌套类和内部类

    在静态嵌套类内部,不能访问外部类的非静态成员变量,这是由 Java 语法中“静态方法不能直接访问非静态成员”所限定。若想访问外部类的变量,必须通过其他方法解决。由於这个原因,静态嵌套类使用很少。 三、非静态...

    Java中的内部类和匿名类

    静态内部类可以独立于外部类实例化,而非静态内部类需要在外部类实例化后才能实例化。 内部类的优点 内部类的第一个好处是隐藏你不想让别人知道的操作,也即封装性。在上面的例子中,类 Content 和 GDestination ...

    深入解析Java中的内部类

    本文将深入探讨Java中的四种内部类:非静态内部类、静态内部类、局部内部类和匿名内部类。 1. 非静态内部类(也称为成员内部类) 非静态内部类是定义在外部类的成员位置的类,它可以访问外部类的所有成员,包括私有...

    Java中的静态变量静态方法静态块与静态类.docx

    Java 中的静态变量、静态方法、静态块和静态类 Java 中的静态变量、静态方法、静态块和静态类是 Java 编程语言的四个重要概念,它们之间存在着紧密的关系。下面将对这四个概念进行详细的介绍。 一、静态变量...

    java基础第七章内部类与异常类.doc

    Java 语言支持在一个类中定义另一个类,这样的类称做内部类。内部类和外嵌类之间存在着紧密的关系:内部类可以访问外嵌类的成员变量和方法,而外嵌类也可以使用内部类声明的对象作为其成员。内部类的类体中不能声明...

Global site tag (gtag.js) - Google Analytics