⾯向对象主要有四⼤特性
抽象
忽略⼀个主题中与当前⽬标⽆关的东西,专注的注意与当前⽬标有关的⽅⾯.(就是把现实世界中的某⼀类东西,提取出来,⽤程序代码表⽰,抽象出来的⼀般叫做类或者接⼝).抽象并不打算了解全部问题,⽽是选择其中的⼀部分,暂时不⽤部分细节.抽象包括两个⽅⾯,⼀个数据抽象,⽽是过程抽象.
数据抽象 -->表⽰世界中⼀类事物的特征,就是对象的属性.⽐如鸟有翅膀,⽻⽑等(类的属性)
过程抽象 -->表⽰世界中⼀类事物的⾏为,就是对象的⾏为.⽐如鸟会飞,会叫(类的⽅法)
封装
封装就是把过程和数据包围起来,对数据的访问只能通过特定的界⾯.如私有变量,⽤set,get⽅法获取
继承
⼀种联结类的层次模型,并且允许和⿎励类的重⽤,提供⼀种明确表达共性的⽅法.对象的⼀个新类可以从现有的类中派⽣,这个过程称为类继承.新类继承了原始类的特性,新类称为原始类的派⽣类(⼦类),
原始类称为新类的基类(⽗类).派⽣类可以从它的⽗类哪⾥继承⽅法和实例变量,并且类可以修改或增加新的⽅法使之更适合特殊的需要.因此可以说,继承为了重⽤⽗类代码,同时为实现多态性作准备.
多态
多态是指允许不同类的对象对同⼀消息做出响应.多态性包括参数化多态性和包含多态性.多态性语⾔具有灵活/抽象/⾏为共享/代码共享的优势,很好的解决了应⽤程序函数同名问题.总的来说,⽅法的重写,重载与动态链接构成多态性.java引⼊多态的概念原因之⼀就是弥补类的单继承带来的功能不⾜.
动态链接 -->对于⽗类中定义的⽅法,如果⼦类中重写了该⽅法,那么⽗类类型的引⽤将调⽤⼦类中的这个⽅法,这就是动态链
java面向对象的特征有哪些方面
接.
注意继承与重载:⼦类与⽗类的关系,重载⽅法的调⽤问题
  ⼦类对象可以直接当成⽗类对象⽤,但是反过来就不⾏.⽐如:⼈是⽗类,学⽣是⼈的⼦类,所以学⽣对象⼀定具备⼈对象的属性,但是⼈对象就未必具有学⽣对象的特性.但是⼦类对象当做⽗类来⽤,将失去⼦类所有特性,只保留与⽗类同名的属性和⽅法,此时可以对⽗类⽅法进⾏重写.
  ⼀个类中如果定义了重载的⽅法,则系统在调⽤⽅法时,会根据参数的类型⾃动选择调⽤合适的⽅法

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。