java内部类的创建方式

      内部类我们在程序开发中经常会用到,这里通过普通内部类,静态内部类和方法内部类三种方式来介绍一下内部类的创建方式。

     1.普通内部类的创建:

/**
 * 
* 普通内部类的定义
*
 */
class Outer {
    private String name = "hello world !";
    //普通内部类定义
    class Inner{
      public void print(){
          System.out.println(name);
      }
    }
}
public class TestDemo {
    public static void main(String[] args) {
     Outer out = new Outer();
     out.new Inner().print();
    }
}
     通过上面的代码可以看出来,普通的内部类不必要通过外部类 显示定义私有属性的get和set方法就可以访问 外部类的私有属性。

    2.静态内部类

   

/**
 * 
* 静态内部类的定义
*
 */
class Outer{
    private static String name = "hello world !";
     static class Inner{
         public static void print(){
          System.out.println(name);   
         }
        
    }
}
public class TestDemo {
    public static void main(String[] args) {
     Outer.Inner.print();
    }
}
    通过观察上面的代码,静态内部类只能访问外部类的静态属性,静态内部类也不用 通过外部类 显示定义静态 私有属性的get和set方法就可以访问 外部类的私有属性。

  3.方法内部类

   

/**
 * 
* 方法内部类的定义
*
 */
class Outer {
    private String name = "hello world !" ;
    public void fun(final int num){
        final String param = "我是方法参数";
       class Inner {
           public void  print(){
               System.out.println("方法传入参数:"+num);
               System.out.println("外部类参数:"+Outer.this.name);
               System.out.println("方法内部参数:"+param);
           }  
       }
       new Inner().print();
        
    }   
}

public class TestDemo {
    public static void main(String[] args) {
     new Outer().fun(100);
    }
}
 方法内部类要想访问方法传入的参数和方法内部的参数,参数类型前面必须要添加final关键字来修饰。

  

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值