封装,抽象,继承,多态。

  1. 封装:
    指的是:

    1. 隐藏内部实现,防止数据被随意修改,提升安全性;
      在这里插入图片描述
    2. 将复杂/有共同点的代码放到一块,简化调用方,提高代码的复用性。
      例如:
      1. 判断人是不是老了的一个方法,这种,我只需要告诉你一个人,你马上能判断出来这个人是不是老了【简单、方便、可复用、对方无需知道太多细节】;
      2. 把计算数字加减乘除都放到一个类里,这个类叫“计算器”。这也叫封装。
      /**
       * 判断一个人是不是老了。【身体年龄 >= 60 或者 心理年龄大于50】
       * @param person 需要判断的对象
       * @return 老了返回true;否则返回false
       */
      public boolean isOld(Person person) {
          // ...省略
      }
      
  2. 抽象:

    1. 使用抽象来限定一个类的所有对外提供的方法。提高代码的维护性,可扩展性。

      例如:生活中的双脚插座。我们不知道未来会有多少需要连接插座的设备,我们只是规定,要想用双脚插座,你得有两个金属接触点等等。这样,只要我们制造新设备时,遵循这个双脚插座的要求就可以了。(这是可扩展性)

      可以被容易替换(符合可维护):如果我们一直在使用某品牌的插座,突然换一种品牌,基本对我们的设备不会造成太大影响。

    2. 可以有效过滤掉无需关注的信息。

      例如:我们对于车的定义是,能快速移动,能供人操作。

      public interface Car{
          void quickMove();
          void operate();
      }
      

      这样我们就知道,车是可以快速移动的。我只要见到一个可以快速移动的非生命体,且可以由人力操控,我们就可以将其定义为车。

      至于你说你自己造了一个车,拿给别人用,他变无需关注你的车是几个轮胎,什么引擎,只知道可以拿来操控并且快速移动。这就够了。他可以把自己之前用的车放在家里,改用你的车,也是可以达到快速移动的效果的。

      而且你也可以在车的基本接口基础上加上自己的方法,比如,你的车可以敞篷等。

  3. 继承

    1. 如果我们在两个及以上类中重复一遍一段代码,那我们最好还是将它放在一个父类中,由子类去继承它。这样做的好处显而易见,能达到复用

      /*
       * 房子类,基本的房子都有的元素。
       * 只要你想造房子,继承这个基本的类就可以了
       */
      public class BaseHouse{
          private String position;
          private double value;
          
          public House(String position, double value) {
              this.position = position;
              this.value = value;
          }
          // 省略getter和setter
      }
      

      但是也有一点,那就是如果父类的更改使得对于特定的子类不能使用时,那就比较不好了。

  4. 多态

    1. 指子类可以替换父类,在实际的代码中,调用子类的方法实现。上述提到的车可以换,以及房子,都是实现多态的方法。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值