java SE 内部类

 内部类

    定义:一个类定义与另一个类的内部,那么称为内部类 

内部类的类别:
    1、成员内部类:
       访问方式:
          (1)在外部类提供一个方法创建内部类的对象进行访问。
          (2)在其他类直接创建该内部类的对象。
                 其格式:外部类.内部类  变量 = new 外部类().new 内部类();

    2、方法内部类:

         (1)  方法中的内部类没有访问修饰符, 即方法内部类对包围它的方法之外的任何东西都不可见。

         (2)  方法内部类只能够访问该方法中的局部变量,所以也叫局部内部类。而且这些局部变量一定要是final修饰的常量。

内部类的好处:
    内部类可以直接访问外部类的所有成员。

内部类的应用:
    在描述事物A时,发现其内部存在一复杂的事物B;且事物B需要访问事物A的属性,这是便可以使用内部类描述事物B
    eg:电话卡----->套餐
    class  电话卡{
         电话号码;
         话费;         
    }

    当内部类和外部类具有同一属性时,使用内部类属性(遵从就近原则)
        若需使用内部类对象访问外部类属性,则使用
             外部类.this.属性;可达成目的
        (因为实例化内部类对象时,new了内部类和外部类。所以单纯的this jvm无法判断对象是哪一个)
 
    内部类一旦出现静态成员,那该类也必须用static修饰。
        原因:静态成员的数据是不需要对象存在的(静态成员变量在.class被加载时就存在的) 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值