面向对象-抽象(abstract)

本文详细介绍了Java中的抽象类、抽象方法、接口及其内部类的使用。抽象类作为类的模板,抽象方法需要在子类中实现。接口作为特殊的抽象类,支持多实现,用于定义开发规范并降低耦合度。内部类分为成员内部类、静态内部类、局部内部类和匿名内部类,各有不同的特点和使用场景。同时,文章还涉及了接口的多态性、lambda表达式的应用以及函数式接口的概念。
摘要由CSDN通过智能技术生成

被abstract修饰的类为抽象类

被abstract修饰的方法为抽象方法

接口(interface)

为特殊抽象类,只能单继承,但是可以多实现

定义开发规范,实现解耦,降低耦合度

使用:

接口不能实例化,需要通过实现类implements实现

通过实现类对象调用

具体实现类:需要重写所有的抽象方法+按需新增

抽象实现类:按需重写+按需新增

内部类

类中定义的类为内部类

分为成员内部类,静态内部类,局部内部类,私有内部类,匿名内部类

成员内部类:

成员内部类中不能定义静态内容,除了静态的常量

可以直接使用外部类成员包括私有的

外部类可以通过内部类的对象调用成员内部类的成员

通过外部类的对象创建成员内部类对象,通过成员内部类对象调用成员内部类成员

私有内部类:

被private修饰的类为私有类

可以直接使用外部类成员包括私有的

在外部类中通过内部类对象调用私有内部类成员包括私有的

私有内部类只能在当前外部类中使用,其他类无法使用

静态内部类:

被static修饰的为静态类

可以定义静态类内容

在静态类中可以直接使用外部类的静态内容,外部类的成员需要通过外部类的对象使用

在静态内部类中可以通过静态内部类的类名调用静态内部类的内容,可以通过静态内部类对象调用其他成员内容 

在其他类中可以通过外部类类名找到静态内部类,new静态内部类对象访问其他成员,通过静态类方法访问其静态内容

局部内部类:

定义在局部位置

局部中可以定义成员内容不可以定义静态内容,常量除外

只能在局部内部类所在的方法通过对象访问成员

局部中可以使用所在方法中的局部变量,可以使用外部类成员

匿名内部类:

作用:

        简化实现类/子类,没用自己类本身作用的实现类/子类

匿名内部对象:实现类/子类+创建对现象

匿名对象:只能在当前位置使用一次

引用指向内部类对象

接口多态:

接口引用调用的为接口中定义的成员

lambda表达式

作用:简化匿名内部类对象

前提:函数式接口

什么是函数式接口?

        接口中只有一个必须被重写的抽象方法

强制检查是否为函数式接口: @FunctionlInterface

语法:

        ( )->{}

():接口中抽象方法的参数列表

->lambda符号/箭头函数

{}:重写方法的方法体

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值