面向对象有哪些特性

  

Java是一门面向对象的语言,面向对象的主要特点有封装,继承,多态

  

封装,意思就是把类的一些属性进行封装(“隐藏”),尽可能的避免直接访问对象一些属性,以保证其安全性,如果必须要访问这些属性,我们可以单独的提供一些接口(共有方法)进行访问,这样我们就可以避免因为直接访问属性信息造成的误操作。

  

继承,在我们的生活中也有很多的继承关系,比如子承父业,在Java中,我们也可以有继承的概念,但是继承只存在于父子类(接口)中,比如我们经常说的狗类继承于动物类,动物类动物具有自己的一些属性,狗属于动物的一种,所以具有动物的一些属性,但是狗也有自己的一些特定属性,这时候如果我们单独在重新创建一个类的狗,就需要重新写一遍动物类的属性,既费时又不好维护,这时候我们就可以使用继承,使用狗类继承动物类,这时候,狗就包含了动物类的一些属性,就不需要我们多次重复写这些属性了。

  

  面向对象有哪些特性

  

多态,即对于同一个对象,可能执行出不同的结果,比如上面类的动物,我们创建他的两个子类,分别为狗和猫,动物有个方法叫做公共空间jiaoSheng () {system . out。println(“动物叫声”);}两个子类分别重写了这个方法,实现形式狗:公共空间jiaoSheng () {system . out。pringln(“狗叫声”);},猫:公共空间jiaoSheng () {system . out。println(“猫叫声”);},这时候我们可以创建一个动物对象动物=new();这时候我们调用animal.jiaoSheng();打印出“动物叫声”;当动物狗=new();的时候,我们调用animal.jiaoSheng ();打印出“狗叫声”;当动物猫=new();的时候,我们调用animal.jiaoSheng ();打印出“猫叫声”;对于同一个对我象动物们调用同一个方法的时候,打印出的结果是不相同的,利用多态,我们就可以进行很多的扩展,而不需要过多的去修改原先的代码,可以保证代码的可维护性;从上面我们可以看得出来,如果要有多态,需要满足三个条件,第一个继承(或实现接口),第二个重写,也就是需要重写父类里面的方法,否则不会实现多态,对象调用的还是父类的方法,第三个父类引用指向子类对象,就像上面的动物,他是一个动物类的对象,但我们新的的时候,创建的是子类狗和猫类的两个对象,

  

以下为源码示例:

  

公共类动物{

  

公共空jiaoSheng () {

  

System.out.println(“动物叫声”);

  

}   

}   

公共类狗延伸动物{

  

@Override   

公共空jiaoSheng () {

  

System.out.println(“狗叫声”);

  

}   

}   

公共类猫延伸动物{

  

@Override   

公共空jiaoSheng () {

  

System.out.println(“猫叫”声);

  

}   

}   

  http://shenzhen.offcn.com/

面向对象有哪些特性