zoukankan      html  css  js  c++  java
  • 内部类(2)

    内部类(2)

    局部内部类

    如果一个类是定义在一个方法内部的,那么就是一个局部内部类

    “局部”,只有所属方法才能调用。

    定义格式: 修饰符 class 外部类名称{

             修饰符 返回值类型 外部方法名 (参数列表){

                     class 局部内部类名称 {

                               //....

                    }

           }

    }

     

    public class juOter {
            public void otermethod(){
                final int num2=12;
                class Inner{//局部内部类(格式)
                    int num = 10;
                    public void intermethod(){
                    System.out.println(num);
    
                    System.out.println(num2);
                    /*
                    局部内部类子想要访问成员方法的局部变量,则该变量必须是有效final的(即只赋值一次,不在变化)
                    在jdk8以上版本不必一定写final关键字只需要赋值一次即可
    
                    原因:
                    局部变量和局部变量创建对象后所在的内存区不同,前者在栈内存中,后者在堆内存中
                    前者随方法的结束而凋亡,后者有垃圾回收机制自动回收(存在时间更长),所以只有
                    当前者为常变量时,后者可以进行复制保存而存储更长时间。
                     */
                }
    
            }
            Inner inner = new Inner();
            inner.intermethod();
            //只能在方法中使用局部内部类
        }
    }
    
    /*
    权限修饰符:
    1.外部类:public/(留空)
    2.成员内部类:public/protected/(留空)/private
    3.局部内部类:(留空)
     */
  • 相关阅读:
    rabiitmq 消息丢失处理
    后端返回文件流和json格式的方式进行文件下载导出
    elasticsearch 安装
    docker-compose 命令
    艾孜尔江的部分影视作品
    游戏作品:万里同风
    Unity设置计时器
    Unity项目中VS Code部分功能出现问题解决思路
    Unity接收FFmpeg的UDP推流
    SVN Basics
  • 原文地址:https://www.cnblogs.com/susexuexi011/p/13811598.html
Copyright © 2011-2022 走看看