什么是抽象?

封装是如何隐藏信息、保护数据

抽象:抽象是隐藏方法的具体实现

抽象到底是什么?

抽象及其前面讲到的封装都是人类处理复杂性的有效手段。在面对复杂系统的时候,人脑能承受的信息复杂程度是有限的,所以我们必须忽略掉一些非关键性的实现细节。

而抽象作为一种:

只关注功能点不关注具体实现的设计思路

这样的好处:​正好帮我们的大脑过滤掉许多非必要的信息

举例

图片存储功能的Interface:

package p2.code.obj.lab_05_02;

import p2.code.obj.lab_05_02.model.Image;
import p2.code.obj.lab_05_02.model.Picture;
import p2.code.obj.lab_05_02.model.PictureMetaInfo;

public interface IPictureStorage {
    void savePicture(Picture picture);
    Image getPicture(String pictureId);
    void deletePicture(String pictureId);
    void modifyMetaInfo(String pictureId, PictureMetaInfo metaInfo);
}

Interface的具体实现

package p2.code.obj.lab_05_02;

import p2.code.obj.lab_05_02.model.Image;
import p2.code.obj.lab_05_02.model.Picture;
import p2.code.obj.lab_05_02.model.PictureMetaInfo;

/*
 */
public class PictureStorage implements IPictureStorage {
    @Override
    public void savePicture(Picture picture) {

    }

    @Override
    public Image getPicture(String pictureId) {
        return null;
    }

    @Override
    public void deletePicture(String pictureId) {

    }

    @Override
    public void modifyMetaInfo(String pictureId, PictureMetaInfo metaInfo) {

    }
}

调用者在使用图片存储功能的时候,只需要了解 IPictureStorage 这个接口类暴露了哪些方法就可以了

不需要去查看 PictureStorage 类里的具体实现逻辑

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值