面向对象,类和类图

封装

  • 封装就是将相关概念组合成一个单位,然后用一个单独的名字来指代。
  • 子程序是早前的例子。
  • 对象封装属性和方法。
  • 属性只能通过方法调用。

信息隐藏

  • 信息隐藏是使用封装来限制某些信息或实现细节的外部可见性。
  • 好的设计应该是“黑盒”。

状态保留

  • 一个函数结束后,状态会消失。通过方法调用,对象可以保持他们的状态。
  • 封装、隐藏、状态保持都是描述了抽象数据类型。

对象识别

  • 每个对象都可以通过一种属性被识别并作为一个独立的软件实体。

信息

  • 发送对象obj1向目标对象obj2传递要求obj2应用其方法的一种载体。
  • 在面向对象中,附加细节本身也是对象。因此,对象可以是发送者、接收者、由另一个对象的变量指向的、由消息中向前或向后传递的参数指向的。
  • 信息的类型:为对象更新自身提供信息、请求对象提供信息、请求对象采取操作

  • 类是用于创建对象的模板。
  • 同一个类的对象都有相同的属性和方法,但状态不同。
  • 给定类的每个对象都有自己的属性,但方法是共享的。
  • 类本身可能有属性和方法,例如静态变量、构造函数。

继承

  • 当子类继承父类时,子类已经拥有了父类的属性和方法。
  • 通常为一般情况构建一个类,然后特殊化。

多态

  • 相同的属性和操作在多个类上定义,可能有不同的实现。

一些小定义

  • 动态绑定:要在运行时而不是编译时执行的确切代码段。
  • 重写:在子类中重新定义父类的方法。
  • 重载:在同一个类中使用相同名称的多个方法。

泛型

  • 一个类的构造,以便只在运行时提供它内部使用的一个或多个类。
  • 类型必须在编译时指定。
  • 例子:策略模式。

类和类图

  • 类图包括:名称、属性、方法。
  • 对象包括:对象名、类名、属性、方法。

属性

  • 是对象的信息。
  • 和变量不一样,属性是抽象定义的,独立于内部表示。
  • 公共属性可获取可设置。(+)
  • 还有private、protected、package local的属性。

方法

  • 包括方法名、参数和返回类型。
  • 有public、private、protected
  • 它们都有个单独的框放gettable/settable属性,所以get/set方法没有显示。

其他概念

  • 私有属性和方法不是接口的一部分,所以应该被隐藏。
  • “类范围”操作应该加下划线。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值