P420 成员内部类

成员内部类的使用

 

 

成员内部类的三种访问方法  

public class MemberInnerClass01 {

        public static void main(String[] args) {

                //外部其他类,使用成员内部类的三种方式

                //第一种方式

                Outer08 outer08 = new Outer08();

                // outer08.new Inner08(); 相当于把 new Inner08()当做是 outer08 成员

                Outer08.Inner08 inner08 = outer08.new Inner08();

                inner08.say();

                //第二种方式,其实就是第一种方式

                Outer08.Inner08 inner08 = Outer08.new Inner08();

                // 第三种方式 在外部类中,编写一个方法,返回 Inner08 对象

                Outer08.Inner08 inner08Instance = outer08.getInner08Instance();                 inner08Instance.say();

        }

}

class Outer08 { //外部类

        public class Inner08 {//成员内部类

        private double sal = 99.8;

        private int n1 = 66;

        public void say() { //可以直接访问外部类的所有成员,包含私有的

        //如果成员内部类的成员和外部类的成员重名,会遵守就近原则. 可以通过 外部类名.this.属性 来访问外部类的成员

                System.out.println("n1 = " + n1 + " name = " + name + " 外部类的 n1=" +         Outer08.this.n1); hi();

        }

}

//方法,返回一个 Inner08 实例

public Inner08 getInner08Instance(){ return new Inner08(); }

//写方法

public void t1() { //使用成员内部类

//创建成员内部类的对象,然后使用相关的方法

        Inner08 inner08 = new Inner08();

        inner08.say();

        System.out.println(inner08.sal);

        }

}

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值