首页 > 编程知识 正文

面向对象的三大特性,对多态对理解,java类与对象

时间:2023-05-06 21:15:33 阅读:32022 作者:760

门户java面向对象的三个特性:

封装:

将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问。

继承:

继承是类与类的一种关系,是一种“is a”的关系。比如“狗”继承“动物”,这里动物类是sxd的父类或者基类,sxd是动物类的子类或者派生类。

多态:

同一个引用类型,使用不同的实例,执行不同的操作。方法重写是实现多态的基础。

面向java对象的三种特性多态性:

即,同一方法可以根据发送对象而采用多个不同行动方式

一个对象的实际类型已确定,但有许多引用类型可以指向该对象

多态存在的条件:

1、有继承关系

2、子类重写父类方法

3、父类引用指向子类对象

注意:

1、多态性是方法多态性,属性无多态性。

2、父类与子类,有联系类型转换异常的ClassCastException

3、存在的条件:需要继承关系,重写方法,父类引用为子类对象Father f=new Son (;

有些方法是不能重写的。 例如,有以下方法:

1、静态修饰的方法,属于类,它不属于实例,不能重写

2、final修饰常数,不能重写

3、私有方法是私有的,不能重写

实例of类型转换~此转换是指引用类型之间的转换

实例:

package oop.demo9;/* * *面向Java对象的三个特性的多态性*,即同一方法根据目标的不同决定了可以采用多个不同动作的*一个对象的实际类型,但是可以指向对象的引用的类型有很多*多态性的条件* 1、存在继承关系* 2、子类重写父类方法* 3、父类引用指向子类对象*注意: * 1、多态性为方法多态性* 2、父类与子类、类型转换异常class *有些方法不能重写为: *1.静态限定的方法属于类,不属于实例。 无法改写。 * 2.final修饰是常量,不能重写。 *3.私有方法是私有的。 无法重写的* *实例of类型转换(此转换是指引用类型之间的转换(/publicclassapplication ) publicstaticvoidmain (string [ ] args ) { /** * //对父类的引用由子类对象Object s3=new Student (; //如果所有类都是Object类/** *子类不重写父类的方法,则子类执行继承父类的方法,子类重写父类的方法,然后子类的方法*/S2. //重写前调用Person的run,重写后调用Student的run s1.run (; //总是调用的是Student的run s1.eat (); //调用自己的方法//s2.eat (; //程序异常,Person类没有eat方法,s2无法调用子类自己的方法}} Person类package oop.demo9; public class person { public void run (} { system.out.println ) ' run ); }} Student类继承Person类package oop.demo9; publicclassstudentextendsperson { @ overridepublicvoidrun () system.out.println ) ' son ); } public void eat () ) system.out.println ) ' eat ); }

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。