第十一章:内部类

第十一章:内部类

一、理解

  • 定义在一个类内部的类称为内部类
  • 语法:
    class 类名{
    class 类名{}
    }
  • 内部类编译之后生成独立的.class文件,文件命名为:外部类类名$内部类的类名.class
  • 内部类分类:成员内部类、静态内部类、局部内部类、匿名内部类
  • 匿名内部类
    (1) 匿名内部类类继承一个类或是实现一个接口
    (2) 匿名内部类只能创建该类的一个对象,而且类的定义和对象的创建一起完成
    public class Test2{
    public static void main(String[]args){
    IA ia=new IA(){
    public void m1(){
    System.out.println(“m1…”);
    }
    public int m2(int a){
    int sum = 0;
    for(int i=1;i<=a;i++){
    sum += i;
    }
    return sum;
    }
    };
    ia.m1();
    int r=ia.m2(45);
    System.out.println(“r=”+r);
    }
    }
    interface IA{
    void m1();
    int m2(int a);
    }

二、Lambda表达式

  • Lambda表达式:应用在函数式接口上,用于简化程序代码
  • Lambda表达式只能应用在函数式接口上(接口中有且只有一个抽象方法)
  • 语法:
    接口名 引用名 = (数据类型 参数名) ->{
    // 方法的实现
    };
  • 应用的细节:
    (1) 当{}中有且只有一行语句时,{}可以省略
    (2) ()中的数据类型可以省略
    (3) 当{}中有且只有一行 return语句时,{}和return可以一起省略
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值