zoukankan      html  css  js  c++  java
  • java内部类之成员内部类之局部内部类

    局部内部类特点:
      1.定义在代码块、方法体内的类叫局部内部类
      2.局部内部类访问外部类的属性和方法使用“外部类名.this.属性名”和“外部类名.this.方法名(参数)”的形式
      3.对外部世界完全隐藏,只能在作用域内生成对象。
    局部内部类有以下限制:
      1.局部类不能加访问修饰符,因为他们不是类成员
      2.成员内部类不能与外部类重名
      3.局部内部类访问作用域内的局部变量,该局部变量需要加final修饰

    public class LocalInnerClass {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		Outer3 outer3 = new Outer3();
    		outer3.OuterShow();
    	}
    
    }
    
    class Outer3{
    	private int num1 = 1;
    	private static int num2 = 2;
    	public void OuterShow() {
    		final int num4 = 4;//fianl好像修复了,不声明为final在内部类里也可以用(可以去掉final)
    		//Inner inner = new Inner();不能在这里实例化,因为Inner类还没有初始化,就不能调用该类
    		class Inner{//局部内部类不能加访问修饰符
    			public void show() {
    				int num1 = 10;
    				System.out.println(num1);
    				System.out.println(Outer3.this.num1);//调用外部类的属性写法
    				System.out.println(Outer3.num2);//调用外部静态属性写法
    				System.out.println(num4);
    			}
    		}
    		Inner inner = new Inner();//应该在这里实例化
    		inner.show();
    	}
    }
    

      

  • 相关阅读:
    hdu 2106 decimal system
    00-自测4. Have Fun with Numbers (20)
    07-图4. Saving James Bond
    hdu 2209 翻纸牌游戏
    hdu 1272 小希的迷宫
    1969 Pie
    怎样维护 SQLite
    Navicat使用亮点
    Navicat for MySQL 11 Mac安装教程
    Navicat for PostgreSQL 运算符有哪些类别
  • 原文地址:https://www.cnblogs.com/liubing2018/p/8462786.html
Copyright © 2011-2022 走看看