【无标题】软构课感悟一

关于ADT和OOP

     对于ADT,我第一次在数据结构课中了解到了这时抽象数据类型概念,在数据结构课中代表各种逻辑而非只是简单的存储结构。现在我认为adt的意义是抽象数据类型体现了程序设计中问题分解、抽象和信息隐藏的特性。抽象数据类型把实际生活中的问题分解为多个规模小且容易处理的问题,然后建立一个计算机能处理的数据模型,并把每个功能模块的实现细节作为一个独立的单元,从而使具体实现过程隐藏起来,它使得只研究和使用一些代码的结构而不用考虑它的实现细节成为可能。这也对我编程的思想有了本质的改变,考虑一个问题的实现从之前的具体思维逐渐倾向于抽象思维,掌握了“面向抽象编程”的核心思想和面向对象软件开发的基本过程,为以后能够对实际应用问题进行抽象和建模做好准备。

      oop是面向对象编程,之前有很短暂的了解java语言的时间,以面向对象编程就是建造各种类而已,就是把c语言的函数放到了类里的方法而已,现在通过学习软件构造课我才发现自己大错特错,因为整体的编程逻辑是完全不一样的,在做了实验之后我感觉饿面对一个新的问题,面向对象编程的思想决定了我分析问题的逻辑,初次尝试由于对c语言的依赖导致自己很吃力。现在再总结oop的特性:

①静态类型:一个定义良好的类型系统应该通过强制执行一些类型声明和兼容性规则来保证它接受的系统的运行时类型安全。

②泛型(Genericity):用于“准备改变”和“为/重用设计”:应该可以编写具有表示任意类型的正式泛型参数的类。

③继承(Inheritance):应该可以将一个类定义为从另一个继承,以控制潜在的复杂性。

④多态(Polymorphism):在基于继承的类型系统的控制下,应该可以将实体(表示运行时对象的软件文本中的名称)附加到各种可能类型的运行时对象。

⑤动态分派/绑定(Dynamic dispatch / binding):在一个实体上调用一个特性应该总是触发与所附加的运行时对象的类型相对应的特性,这在调用的不同执行过程中不一定是相同的。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值