栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java笔记 匿名内部类2 成员内部类 静态内部类

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java笔记 匿名内部类2 成员内部类 静态内部类

匿名内部类细节



匿名内部类实践
1.当做实参直接传值,简洁高效

传统方式要先写一个类–>实现IL,如下


2.匿名内部类涉及 继承,多态,动态绑定,内部类

package 内部类;

public class 匿名内部类测试
{
    public static void main(String[] args)
    {
        
        CellPhone cellPhone = new CellPhone();
         
        cellPhone.alarmclock(new Bell()
        {
            //韩老师解读:
            //1.传递的是实现了Bell接口的匿名内部类 InnerClassExercise02$1
            //2. 重写了 ring
            //3. Bell bell = new Bell() 运行起来实际上类似于此段代码
//            {
//                @Override
//                public void ring()
//                {
//                    System.out.println("小伙伴下课了");
//                }

            @Override
            public void ring()
            {
                System.out.println("懒猪起床了");
            }
        });
        
        cellPhone.alarmclock(new Bell()
        {

            @Override
            public void ring()
            {
                System.out.println("小伙伴下课了");
            }
        });
        
    }
}

interface Bell
{
    void ring();
}

class CellPhone{
    public void alarmclock(Bell bell){
        bell.ring();
    }
}

成员内部类
成员内部类是定义在外部类内的成员位置上,这是区别于局部内部类和匿名内部类的主要特点!!

成员内部类的使用

上图代码控制台结果如下


外部其它类 使用 成员内部类的三种方式,本质及常用的只有前两点


静态内部类




静态内部类 , 是可以可以通过类名直接访问的(前提是满足访问权限)

外部其他类访问静态内部类


练习题

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/357726.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号