Java面向对象编程有三大特性,它们是封装、继承和多态。java
封装:编程
字面上来讲就是将一个东西包裹起来,这样会掩饰掉内部的细节。怎么样?这么一说是否是有点想法。微信
将类封装起来,只提供想提供的方法接口,而不须要提供具体实现细节,这样一来使得程序更加健壮。spa
另外一方面比方说项目作到一半换人了,老板如今要求吧代码改了,有了封装以后,你彻底不用管前人写的烂代码,只须要给出必须 对象
的接口方法,就能够本身写本身的了,修改方便。blog
怎么封装呢?使用访问修饰符。还记得类的访问修饰符么,只能写public或者默认不写。继承
在类里面可使用public、protected、默认不写或者private。这四个修饰符的访问权限愈来愈低。接口
还有一种方法,使用内部类。使用内部类可以更好的完成封装,有关内部类的详细介绍,请看下篇文章。io
继承:面向对象编程
继承很明显就是从一个已有的类那获得一些东西,可以很好的实现代码的重用性。
被继承的类称之为父类或者超类,继承父类的类称为子类。Java中全部类都是Object类的子类。
另外JAVA中只容许单继承,这样一来避免了多继承带来的代码过分耦合的问题。
虽然不能多继承,可是java中能够实现多个接口,来实现功能的扩展。
多态:
指的是子类对象能够赋值给父类变量,但运行是仍表现出子类的行为特征,这意味着同一个类型的对象在执行同一个方法时,能够
表现出多种行为特征。
简单来讲,就是程序中同名的不一样方法。
那么,怎么实现多态呢?
例如,能够经过子类对父类方法的覆盖实现,还能够经过一个类中方法的重载,还能够经过将子类的对象做为父类的对象实现多
态。
子类将父类方法覆盖,指子类继承了父类的方法,对方法名、参数和类型不作修改,而仅仅改动方法的实现。
这时候调用被覆盖的父类字段和方法时,需使用super关键字。但须要注意,父类中声明为static、final的方法不能被覆盖。
并且声明为final的类的全部方法不容许被覆盖。
另外一种实现多态的方法,在类中定义同名但参数不一样的方法,包括参数类型不一样、参数个数 不一样,即方法的重载来实现多态。简单
的例子:
run(int i){}
run(char c){}
run(int i,char c){}
还能够经过对象引用实现多态,具体含义指引用型变量能够指向不一样类型的对象
举个例子,公司里有职员和管理两类人,可是管理自己也是职员,也就是管理类继承自职员类。
对于职员类型变量不只能够表示职员还能够表示管理类对象。
多态大大提升了程序的抽象程度,下降了类和程序模块之间的耦合性,也提升了类模块的封闭性。
因为小编水平有限,若有不足,还请不吝赐教!!!此处也是重点,记下记下。微信搜索关注油墨山公众号,获取更多文章资讯!!!
◆◆油墨未干,为什么停下双手!◆◆
感谢关注!
微信号:youmoshan