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程序设计有所帮助。

相关文章

  • springboot入门之profile设置方式

    springboot入门之profile设置方式

    这篇文章主要介绍了springboot入门 profile设置方式,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • Java 创建线程的两个方法详解及实例

    Java 创建线程的两个方法详解及实例

    这篇文章主要介绍了Java 创建线程的两个方法详解及实例的相关资料,需要的朋友可以参考下
    2017-03-03
  • springBoot整合rabbitmq测试常用模型小结

    springBoot整合rabbitmq测试常用模型小结

    这篇文章主要介绍了springBoot整合rabbitmq并测试五种常用模型,本文主要针对前五种常用模型,在spirngboot框架的基础上整合rabbitmq并进行测试使用,需要的朋友可以参考下
    2022-01-01
  • spring中时间格式化的两种方法示例讲解

    spring中时间格式化的两种方法示例讲解

    这篇文章主要介绍了spring中时间格式化的两种方法,方法一自己格式化,方法二通过配置,结合实例代码讲解的非常详细,文中补充介绍了Spring项目中时间格式化的方法,需要的朋友可以参考下
    2023-08-08
  • Java和Python现在都挺火,我应该怎么选?

    Java和Python现在都挺火,我应该怎么选?

    这篇文章主要介绍了Java和Python现在都挺火,我应该怎么选?本文通过全面分析给大家做个参考,需要的朋友可以参考下
    2020-07-07
  • 一篇看懂Java中的Unsafe类

    一篇看懂Java中的Unsafe类

    在阅读AtomicInteger的源码时,看到了这个类:sum.msic.Unsafe,之前从没见过。所以花了点时间研究了下,下面这篇文章主要给大家介绍了关于Java中Unsafe类的相关资料,需要的朋友可以参考借鉴,下面来一起学习学习吧
    2018-05-05
  • springsecurity 基本使用详解

    springsecurity 基本使用详解

    这篇文章主要介绍了springsecurity 基本使用,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • jsp+dao+bean+servlet(MVC模式)实现简单用户登录和注册页面

    jsp+dao+bean+servlet(MVC模式)实现简单用户登录和注册页面

    这篇文章主要介绍了jsp+dao+bean+servlet(MVC模式)实现简单用户登录和注册页面,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • 关于WeakhashMap与HashMap之间的区别和联系

    关于WeakhashMap与HashMap之间的区别和联系

    这篇文章主要介绍了关于WeakhashMap与HashMap之间的区别和联系,WeakHashMap从名字可以得知主要和Map有关,不过还有一个Weak,我们就更能自然而然的想到这里面还牵扯到一种弱引用结构,因此想要彻底搞懂,我们还需要知道四种引用,需要的朋友可以参考下
    2023-09-09
  • Java知识梳理之泛型用法详解

    Java知识梳理之泛型用法详解

    从JDK 5.0以后,Java引入了“参数化类型(Parameterized type)”的概念,允许我们在创建集合时再指定集合元素的类型。本文就来和大家深入聊聊Java泛型的使用
    2022-08-08

最新评论