zoukankan      html  css  js  c++  java
  • JAVA内部类访问权限

    class Outer{

          private  int myI=100;

           private static String name="name outer";

           public void show(){

            system.out.println(“Outer。show”);

          }

            public void test2(){//外部类访问内部类

                Inner ub=new Inner();

                ub.TestInner();   

            }

       public static void test2(){//外部类静态方法访问内部类

          //在外部类的静态方法中实例内部类的对象,必须先创建外部类对象

          Outer outer=new Outer();

          Inner ub=outer.new Inner();//创建内部类对象

          ub.TestInner(); 

      或者

          Inner ub=new Outer.new Inner();//创建内部类对象

          ub.TestInner(); 

     }

      class Inner{

         public void TestInner(){//在内部类访问外部类-实类

            Outer outer=new Outer();

            outer.show();       

            system.out.println(“访问外部类的变量:”+Outer.this.myI);//加上外面类名

            system.out.println(“访问外部类的静态变量:”+Outer.name);//加上外面类名

         }

       }

    }


    说明​

    在其他类方法内访问内部类

          Outer outer=new Outer();

          Outer.Inner ub=outer.new Inner();//创建内部类对象

          ub.TestInner(); 

    1、内部类是外部类一个成员,因此内部类可以只有访问外部类的成员变量,无论是否是private。

       内部类中不允许有任何静态声明,

       但可以有静态常量,如static final boolean jj=false。

       不能有静态方法


  • 相关阅读:
    Hive性能分析和优化方法
    浅谈MySQL中优化sql语句查询常用的30种方法
    spark 源码阅读博客
    spark shell学习笔记
    用shell 实现对MySQL数据库分页
    hive 1.2 配置
    spark1.4配置安装
    HBase学习
    【转】解密饿了么大前端团队
    【转】我心目中的支付宝架构
  • 原文地址:https://www.cnblogs.com/luckForever/p/7254174.html
Copyright © 2011-2022 走看看