面向对象4大基本特征:抽象、封装、继承、多态。
抽象。将一些事物的共性抽离出来归为一个类。如对于动物,具有生命体征、活动能力等区别于其它事物的共同特征
封装。有选择地隐藏和暴露数据和方法。比如有U盘这个类,我希望隐藏内部组成和实现,只暴露USB接口以供使用
继承。子类可以直接使用父类的部分数据和方法,可以有选择的扩展。比如鸟是动物,但鸟扩展了飞行的能力。
多态。同一类的对象调用相同方法可以表现出不同的行为。比如动物实现了say()方法,猴子、马等动物重写了say()方法来表现不同的交流语言。
扩展资料:
7大设计原则:
单一职责原则。一个类应该仅有一个引起它变化的原因 。如果一个类承担的职责过多,那么这些职责就会相互依赖,一个职责的变化可能会影响另一个职责的履行。
开放封闭原则。对扩展开放,对更改封闭。 为一个软件系统增加新功能时,只需要从原来的系统派生出一些新类就可以,不需要修改原来的任何一行代码。
里氏替换原则。子类必须能够替换任何地方的父类 。
合成/聚合原则。尽量使用合成/聚合而不使用类继承。
迪米特法则(最少知道原则)。一个对象应当对其他对象有尽可能少的了解。
让高层模块不直接依赖低层模块。若高层模块A直接依赖低层模块B,假如要将A改为依赖C,则必须修改A的代码。而将A修改为依赖接口I,更换底层模块时只需实现接口I。
接口隔离原则。一个接口只应该描述一种能力。
参考资料:百度百科-面向对象
抽象
继承
封装
多态性
抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。比如,我们要设计一个学生成绩管理系统,考察学生这个对象时,我们只关心他的班级、学号、成绩等,而不用去关心他的身高、体重这些信息。抽象包括两个方面,一是过程抽象,二是数据抽象。过程抽象是指任何一个明确定义功能的操作都可被使用者看作单个的实体看待,尽管这个操作实际上可能由一系列更低级的操作来完成。数据抽象定义了数据类型和施加于该类型对象上的操作,并限定了对象的值只能通过使用这些操作修改和观察。
继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。这也体现了大自然中一般与特殊的关系。继承性很好的解决了软件的可重用性问题。比如说,所有的Windows应用程序都有一个窗口,它们可以看作都是从一个窗口类派生出来的。但是有的应用程序用于文字处理,有的应用程序用于绘图,这是由于派生出了不同的子类,各个子类添加了不同的特性。
封装: 封装是面向对象的特征之一,是对象和类概念的主要特性。封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。一旦定义了一个对象的特性,则有必要决定这些特性的可见性,即哪些特性对外部世界是可见的,哪些特性用于表示内部状态。在这个阶段定义对象的接口。通常,应禁止直接访问一个对象的实际表示,而应通过操作接口访问对象,这称为信息隐藏。事实上,信息隐藏是用户对封装性的认识,封装则为信息隐藏提供支持。封装保证了模块具有较好的独立性,使得程序维护修改较为容易。对应用程序的修改仅限于类的内部,因而可以将应用程序修改带来的影响减少最低限度。
多态性: 多态性是指允许不同类的对象对同一消息作出响应。比如同样的加法,把两个时间加在一起和把两个整数加在一起肯定完全不同。又比如,同样的选择编辑-粘贴操作,在字处理程序和绘图程序中有不同的效果。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。
Java中面向对象的特征有哪些?
有四大基本特征:封装、抽象、继承、多态 面向对象的封装性:即将对象封装成 一个高度自治和相对封闭的个体,对象状态(属性)由这个对象自己的行为(方法)来读取和改变 抽象:就是找出一些事物的相似和共性之处,然后将这些事物归为一类,这个类只考虑这些事物的相似之处和共性之处,并且会忽略与当前主题...
面向对象 基本特征
面向对象基本特征是:⑴对象唯一性。每个对象都有自身唯一的标识,通过这种标识,可找到相应的对象。在对象的整个生命期中,它的标识都不改变,不同的对象不能有相同的标识。⑵抽象性。抽象性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。一个类就是这样一种抽象,它反映了与应用有...
面向对象的特征有哪些
面向对象的特征主要包括封装性、继承性、多态性和抽象性。1. 封装性:封装是把对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象的内部实现细节。通过封装,对象可以保护自己的数据不被外部干扰或误用。在编程中,封装可以是变量或函数的私有化实现,仅通过公开的方法和接口与外界交互。这样的设计不...
面向对象程序设计有哪些基本特征?
面向对象程序设计有4个主要特点,分别是:抽象、封装、继承、多态。以下是具体解释;一、抽象和封装 类和对象体现了抽象和封装 抽象就是解释类与对象之间关系的词。类与对象之间的关系就是抽象的关系。一句话来说明:类是对象的抽象,而对象则是类得特例,即类的具体表现形式。封装两个方面的含义:一是...
面向对象的基本特征
面向对象的基本特征:1、封装;2、继承;3、多态;4、抽象;5、消息传递。1、封装(Encapsulation):封装是指将数据(属性)和操作数据的函数(方法)捆绑到一起,形成一个独立的实体,即对象。对象通过封装提供了对外界的接口,使得其他程序可以访问和操作对象的属性和方法。封装有助于提高程序的模块化...
面向对象的四个基本特征
特征见下面:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。封装是面向对象的特征之一,是对象和类概念的主要特性。多态性是指允许不同类的对象对同一消息作出响应。比如...
面向对象的四个特征 程序
面向对象程序设计所具有的4个共同特征:抽象性、封装性、继承性和多态性。1.抽象 抽象包括两个方面:过程抽象和数据抽象。过程抽象把一个系统按功能划分成若干个子系统,进行"自顶向下逐步求精"的程序设计。数据抽象以数据为中心,把数据类型和施加在该类型对象上的操作作为一个整体(对象)来进行描述,...
Java面向对象的四个特征?
数据抽象——就是用代码的形式表示现时世界中一类事物的特性,就是针对对象的属性。比如建立一个鸟这样的类,鸟都有以下属性:一对翅膀、两只脚、羽毛等。抽象出来的类都是鸟的属性,或者成员变量。过程抽象——就是用代码形式表示现实世界中事物的一系列行为,就是针对对象的行为特征。比如鸟会飞、会...
面向对象特征有哪些
抽象性则是面向对象编程中另一个关键的概念。抽象是指将事物的共同属性和行为抽象出来形成一个类,而忽略其细节差异。通过抽象,可以定义出通用的类和接口,使得代码更加简洁和易于理解。同时,抽象也有助于简化复杂问题,提高软件的可维护性和可扩展性。以上就是面向对象的四个主要特征:封装性、继承性、...
面向对象的特点是什么
面向对象的特征是:1、抽象,把现实世界中的某一类东西,提取出来,用程序代码表示;2、封装,把过程和数据包围起来,对数据的访问只能通过已定义的界面;3、继承,一种联结类的层次模型;4、多态,允许不同类的对象对同一消息做出响应。面向对象(Object Oriented)是软件开发方法,一种编程范式。面向对象...