《架构师训练营》-第二周-面向对象编程

本文详细介绍了面向对象编程的三大要素:封装、继承和多态,以及面向对象编程与面向对象分析的区别。此外,文章还深入探讨了设计原则中的单一原则、开闭原则、里氏替换原则、迪米特法则、接口隔离原则和依赖反转原则,帮助读者理解如何编写更加稳定、可维护的代码。
摘要由CSDN通过智能技术生成

面向对象编程

对象

对象具有状态、行为和标识。

  • 状态:每个对象可以有自己的数据(属性)
  • 行为:每个对象可以产生行为(函数)
  • 标识:表明每个对象都区别于其它的对象(地址)

面向对象编程的三要素

封装(Encapsulation)

封装是为了提高代码可维护性和易用性,降低接口复杂度,来隐藏信息或者保护数据。

Java语言利用访问修饰符来达到封装的目的。private,protected,public三个级别,当不使用访问修饰符时,类默认是同一个包下可见,接口默认是public级别。

继承(Inheritance)

继承是为了代码复用。将公共部分提取到父类中,让不同的子类来继承父类。

Java语言支持单继承多实现。

为什么不支持多继承?设计者的初衷,让java更简单,所以选择了单继承多实现,避免多继承中函数冲突的问题。

1.8之后允许接口有default的方法,如果多接口中默认实现的函数定义一致,则会失去默认实现的意义,必须实现类自己来实现。


public interface InterA {
   

    default  void action(){
   
        System.out.println("InterA action");
    }
}

public interface InterB {
   

    default  void action(){
   
        System.out.println("InterB action");
    }
}

// 提示:Inter inherits unrelated defaults for action() from types InterA and InterB
public class Inter implements  InterA, InterB {
   
}

/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

瑾析编程

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

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

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

打赏作者

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

抵扣说明:

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

余额充值