JAVA(七)-----类高级部分

JAVA(七)-----类高级部分

ID:37915206

大小:49.00 KB

页数:7页

时间:2019-06-02

JAVA(七)-----类高级部分_第1页
JAVA(七)-----类高级部分_第2页
JAVA(七)-----类高级部分_第3页
JAVA(七)-----类高级部分_第4页
JAVA(七)-----类高级部分_第5页
资源描述:

《JAVA(七)-----类高级部分》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、类高级部分一类的继承一类的继承在现有类的基础上创建新的类,称派生类;也称子类;现有类称为基类或父类或超类;基类也可以是其它类的派生类;基类的直接派生类称为直接子类;Java中用extends来声明继承;Java只允许从一个类派生出子类;基类本身可以独立使用;二继承的关系:通过继承,派生类获得基类的成员;被继承的基类成员可以在派生类中访问;不能被继承的基类成员不能在派生类中访问;不能被继承的基类成员虽然不是派生类成员,但却是派生类对象组成的部分;基类成员是否能被继承,由包和成员的访问属性决定;在同一个包中,基类中的Private成员不能被继承,其它成员可以被继承;在包之间,基类Privat

2、e和未说明访问属性的成员不能被继承构造方法,作为一个特例,不能被继承;从基类继承的成员,其访问属性不变;7基类中的Static成员,同样也属于派生类成员,由基类对象和派生类对象共享;三隐藏的继承成员:被继承的基类成员可在派生类中直接访问,有时用户在派生类中定义的成员名与继承成员的名称相同,会造成继承成员的隐藏;要访问被隐藏的继承成员,用限定词Super;Super不能用在static初始化块中,也不能用在static方法中;在派生类中隐藏继承的方法成员时,新定义的同名方法的可访问范围不能比继承成员的访问范围小;Public允许在所有地方访问,可被继承;Protected限制在一个包中所有

3、的地方访问,可在包内,包外被继承;未说明访问属性的成员只能在同一个类中访问,不能被继承;Private成员只能在同一个类中访问,不能被继承;四派生类的构造方法基类中不能被继承的成员,也是派生类对象的组成部分;基类中不能被继承的成员,可以通过被继承的方法来访问;在创建派生类对象时,Java解释器会自动创建隐含的基类对象,只是该对象不能直接被使用而已;在派生类的构造方法中,可使用Sup7er()方法,来调用基类的构造方法;如用户在派生类的构造方法中没有调用基类的构造方法,则解释器会自动插入Super()语句来调用基类的构造方法;如基类定义的构造方法带有参数,则导致编译错误,所以定义派生类时要

4、显示的使用super;Super()方法必须是派生类构造方法的第一条语句,如不是,则会编译出错;super()方法之前只能是空行或注释语句;五多级继承Java中允许多级继承,即派生类可以是其它类的基类;继承具有传递性,派生类从基类中继承的成员,又可被自己的派生类继承;派生类称子类,派生类的派生类称间接子类;基类称直接基类,基类的基类称间接基类;二多态Java对数据类型执行强制检查,一个基本数据类型的变量只能存储相同类型的数据,一个对象变量只能引用相同类型的对象;在派生类中,一个基类对象可以引用一个子类对象;这一功能在java中用多态来解决;应用多态的前提:用基类变量引用子类对象;基类变量

5、调用的方法既是基类成员,也是子类成员;被调用方法的名称、参数、返回值,在基类和子类中完全相同;7当子类与基类具有同名的方法,且方法的参数和返回值都相同时,便可应用多态机制;当基类变量调用对象方法时,java解释器根据基类变量引用的对象类型决定所调用的方法,而不是根据基类变量的类型来决定;*只能用基类变量引用子类对象,不能用子类变量引用基类对象,否则提示类型不匹配;三finalFinal声名数据成员时,表示该成员为常量初始化后,其值不能再修改;Final声名方法时,表示该方法在子类中不能覆盖,即不能在子类中定义同名的方法;Final声名类时,表示该类不能派生任何子类;四抽象类抽象类用abs

6、tract来声名:抽象类中,可用abstract声名抽象方法,抽象方法没有方法体;从抽象类派生子类时,在子类中实现继承的抽象方法;如果子类没有实现所有的抽象方法,则子类必须声名为抽象类;与普通类类似,抽象类中也可以定义数据成员和非抽象方法;不管抽象类中是否包含抽象方法,都不能创建初象类的对象;但可以声名抽象类变量抽象类变量虽然不能用于引用抽象类对象(因为不能创建),但可用于引用实现了所有抽象方法的派生类对象;(多态性)五Object类7Object类是所有类的基类;在程序中,虽然没有用extends来声明,但编译器自动将用户定义的类作为object类的子类;object既然是所有类的基类

7、,其变量也可以引用所有其它类的对象;Object定义的处理对象的方法:1.toString:public返回字符串类名@对象的十六进制散列码;将对象作为字符串使用时自动调用该方法;2.equalspublic判断调用方法的对象和参数指定的对象是否为同一个对象;如果是返回true,反之不是同一个对象(即使类型,值也是相同的;)则返回false3.getclass:finalpublic:返回包含对象信息的class类对象;class类

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。