java是面向对象的编程语言,ADT和OOP在java语言中经常用到。
ADT即Abstract Date Type(抽象数据类型),通常是用一个或多个类既其中的成员变量和成员方法,来抽象表示一个具体的事物即与此事物相关的操作。
ADT具有一下几个能表达抽象思想的词:
·抽象化:用更简单、更高级的思想胜率或隐藏低级细节。
·模块化:将系统划分为组件或模块,每个组件可以设计,实施,测试,推理和重用,与系统其余部分分开使用。
·封装:围绕模块构建墙,以便模块负责自身的内部行为,并且系统其他部分的错误不会损坏其完整性。
·信息隐藏:从系统其余部分隐藏模块实现的细节,以便稍后可以更改这些细节,而无需更改系统的其他部分。
·关注点分离:一个功能知识单个模块的责任,而不跨越多个模块。
OOP即Object Oriented Programming(面向对象编程),java就是面向对象的编程语言。对java来说,所有的东西都是对象,程序是一大堆对象的组合,所有的操作都是针对对象的。对象可以被想象成一种新型变量,它保存着数据,但可要求它对自身进程操作。理论上讲,可从要解决的问题身上提出所有概念性的组件,然后在程序中将其表达为一个对象。同样以上图举例,将一篇Tweet抽象为一个Tweet对象后,所有对该Tweet的操作都可编程为对该对象的操作。