Java局部内部类原理与用法实例分析

 更新时间:2019年09月27日 11:47:59   作者:cakincqm  
这篇文章主要介绍了Java局部内部类原理与用法,结合实例形式分析了Java局部内部类功能、用法及相关操作注意事项,需要的朋友可以参考下

本文实例讲述了Java局部内部类原理与用法。分享给大家供大家参考,具体如下:

一 点睛

如果把一个内部类放在方法中定义,那么这个内部类就是一个局部内部类,局部内部类仅在方法里有效。

由于局部内部类不能在外部类的方法以外的地方使用,因此局部内部类也不能使用控制符合static修饰符修饰。

如果需要用局部内部类定义变量、创建实例或派生子类,那么都只能在局部内部类所在的方法中进行。

二 代码

public class LocalInnerClass
{
  public static void main(String[] args)
  {
   // 定义局部内部类
   class InnerBase
   {
     int a;
   }
   // 定义局部内部类的子类
   class InnerSub extends InnerBase
   {
     int b;
   }
   // 创建局部内部类的对象
   InnerSub is = new InnerSub();
   is.a = 5;
   is.b = 8;
   System.out.println("InnerSub对象的a和b实例变量是:"
     + is.a + "," + is.b);
  }
}

三 运行

InnerSub对象的a和b实例变量是:5,8

四 说明

编译完成后,会生成LocalInnerClass.class、LocalInnerClass$1InnerBase.class和LocalInnerClass$1InnerSub.class三个文件,之所以局部内部类有数字是因为同一个类里可能有两个以上的同名的局部内部内(处于不同的方法中)。

局部内部内作用域太小,不利于多次复用,因此在开发中很少使用局部内部类。

更多java相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总

希望本文所述对大家java程序设计有所帮助。

相关文章

  • Java真题实练掌握哈希表的使用

    Java真题实练掌握哈希表的使用

    哈希表是一种根据关键码去寻找值的数据映射结构,该结构通过把关键码映射的位置去寻找存放值的地方,说起来可能感觉有点复杂,我想我举个例子你就会明白了,最典型的的例子就是字典
    2022-07-07
  • AQS(AbstractQueuedSynchronizer)抽象队列同步器及工作原理解析

    AQS(AbstractQueuedSynchronizer)抽象队列同步器及工作原理解析

    AQS是用来构建锁或者其他同步器组件的重量级基础框架及整个JUC体系的基石,通过内置的FIFO对列来完成资源获取线程的排队工作,并通过一个int类型变量表示持有锁的状态,本文给大家详细介绍下AQS抽象队列同步器的相关知识,感兴趣的朋友一起看看吧
    2022-03-03
  • Spring Boot 核心模块详解(12 个模块详解及作用说明)

    Spring Boot 核心模块详解(12 个模块详解及作用说明)

    和 Spring 框架一样,Spring Boot 框架也是由许多核心模块组成的,每个模块负责不同的功能点,本文讲着重于介绍 Spring Boot 相关的 12 个模块的作用和功能,感兴趣的朋友一起看看吧
    2025-04-04
  • Java如何从服务器中下载图片

    Java如何从服务器中下载图片

    这篇文章主要为大家详细介绍了Java如何从服务器中下载图片,代码中附有详细注释,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • SpringBoot+Redission实现排行榜功能的示例代码

    SpringBoot+Redission实现排行榜功能的示例代码

    这篇文章主要介绍了基于SpringBoot+Redission实现排行榜功能,实现一个排行榜,要求按照分数和达成这个分数的时间排序,即相同分数下,时间早的在上面,文中通过代码示例介绍的非常详细,需要的朋友可以参考下
    2024-05-05
  • java将文件转成流文件返回给前端详细代码实例

    java将文件转成流文件返回给前端详细代码实例

    Java编程语言提供了强大的文件处理和压缩能力,下面这篇文章主要给大家介绍了关于java将文件转成流文件返回给前端的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-07-07
  • Java concurrency线程池之线程池原理(三)_动力节点Java学院整理

    Java concurrency线程池之线程池原理(三)_动力节点Java学院整理

    这篇文章主要为大家详细介绍了Java concurrency线程池之线程池原理第三篇,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • Java数据结构之链表的增删查改详解

    Java数据结构之链表的增删查改详解

    在这篇文章中,小编将带大家了解一下Java数据结构中链表的增删查改(以下结果均在IDEA中编译)希望在方便自己复习的同时也能帮助到大家
    2022-09-09
  • Java中Http连接的两种方式(小结)

    Java中Http连接的两种方式(小结)

    这篇文章主要介绍了Java中Http连接的两种方式(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Java 进阶必备之ssm框架全面整合

    Java 进阶必备之ssm框架全面整合

    SSM框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层,使用spring MVC负责请求的转发和视图管理,spring实现业务对象管理,mybatis作为数据对象的持久化引擎
    2021-10-10

最新评论