2021.04.06JAVA面向对象之内部类

24 篇文章 1 订阅

内部类

成员内部类
(1)内部类可以直接使用外部类的成员变量和成员方法,外部类
不可以直接使用内部类的变量和方法
(2)内部类和外部类中出现崇明的变量解决方案
     this.变量   调用的是内部类变量
     外部类.this.变量    调用的是外部类变量
(3)成员内部类  等级和成员变量、成员方法等级是一样的

静态成员内部类
(1)静态成员内部类只可以直接调用外部类中的静态成员变量
(2)内部类产生的class文件名字  外部类$n内部类.class

局部内部类
(1)局部内部类只可以在当前方法中使用,出了当前方法就没有办法使用
(2)局部内部类只可以使用方法中常量,不可以使用变量
(3)JDK1.8开始,局部内部类中使用常量的final关键字可以不写

public class TestA {

    public static void main(String[] args) {

        System.out.println("--------调用非静态成员内部类方法--------------");
        //[1]创建外部类对象
        Student  stu=new Student();
        //[2]使用外部类对象创建内部类对象
        Student.A a= stu.new A();
        //[3]调用a类方法
        a.getSxt2();
        System.out.println("--------调用静态成员内部类方法--------------");
        //Student2  stu2=new Student2();

        Student2.A.cc();//调用静态内部类中静态方法

        Student2.A a1 = new Student2.A();
        a1.bb();//调用静态内部了中非静态方法
    }
}

匿名内部类
(1)匿名内部类没有办法书写构造函数
(2)匿名内部类的作用就是为了快速的构建一个实现类,在这个实现类中定义普通方法,外部是调用不到的,因为不满足多态调用方法的特性
(3)匿名内部类中变量是没有办法通过外部赋予初始值,只可以使用代码块的方式赋值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

~Amory

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值