- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
南京邮电大学JAVAchapter06 多态性
第六章;学习目标;6.1 多态性概念和实例 ;定义Shape s;
s.draw(g);
//s调用draw()方法,s指向对象不同会画出不同的图形(圆或矩形或三角形)
多态性也是泛指在程序中同一个符号在不同的情况下具有不同解释的现象。;6.1 多态性概念和实例(续);6.2 继承层次结构中对象间的关系;6.2 继承层次结构中对象间的关系(续);强制类型转换
下列语句组是将point对象强制转换成Circle对象,circle. getX() 语句是正确的,而circle. getRadius()语句在运行时会产生错误。因为circle引用指向的point对象无getRadius方法。
Point3 point = new Point3( 30, 50 );
Circle circle=(Circle) point;
circle. getX() ;
circle. getRadius() ; //run-time error
例6-1中的例子举例说明了继承层次结构中对象间的关系。;;6.3 抽象类和抽象方法 ;6.3.1 抽象类和具体类的概念;6.3.2 抽象方法的声明;6.3.3 抽象类的声明;6.3.4 抽象类程序设计的举例;//Shape.java
public abstract class Shape extends Object { //定义Shape为抽象类
public double getArea()
{
return 0.0;
}
public double getVolume()
{
return 0.0;
}
public abstract String getName(); //定义getName为抽象方法
} ;6.4 接口的声明和实现 ;6.4.1 接口的概念;6.4.2 接口的声明;public interface Shape{
public final static double PI=3.1416;
public abstract void draw( Graphics g);
};6.4.3 接口的实现;6.4.4 接口的程序设计举例;//Point.java
public class Point extends Object implements Shape {
private int x;
private int y;
public Point(){
}
public Point( int xValue, int yValue ){
x = xValue;
y = yValue;
}
......
public double getArea(){ //实现Shape接口中的getArea方法
return 0.0;
}
public double getVolume(){ //实现Shape接口中的getVolume方法
return 0.0;
}
public String getName(){ //实现Shape接口中的getName方法
return Point;
}
public String toString(){ //覆盖Object类中的toString方法
return [ + getX() + , + getY() + ];
}
};6.5 final方法和final类 ;6.6 嵌套类 ;6.6.1 内部类的概念;6.6.2 内部类的声明;例子6-5 内部类使用的例子 TestWindow.java;6.6.3 匿名内部类声明;;6.6.4 嵌套类的程序设计举例;;在声明和使用嵌套类时,应该注???以下事项:
(1)包含嵌套类的类在编译时,将为每个类产生单独的.class文件。嵌套类文件名为OuterClassName$InnerClassName.class。匿名内部类的文件名为OuterClassName$#.class,#从1开始,编译时,每遇到一个匿名内部类,#递增1。
(2)带有名称的内部类可以声明为public、protected、包访问或private,并且它们的使用限制与其他类成员相同。
(3)内部类能以OuterClassName.this的形式访问其外部类的this引用。
(4)外部类负责创建内部类的对象。为创建另一个类的内部类对象,首先创建该外部类的一个对象,并将该对象
您可能关注的文档
最近下载
- u市场管理规范.doc VIP
- 癫痫病人的围术期麻醉管理.pptx VIP
- 特殊教育概论第二版全套完整教学课件.pptx
- 《银屑病的治疗》课件.ppt VIP
- 2023年下第三套广播操舞动青春全套教案.doc VIP
- 新人教版八年级上册物理全册课件(2024年秋季新版教材).pptx
- 中建七局《准代建模式EPC项目策划总结交流材料》.pptx VIP
- 2025南京卫生高等职业技术学校工作人员招聘考试真题.docx VIP
- 运动控制系统安装与调试(第2版)课件全套 甄久军 项目1--5 典型运动控制系统的认知与装调 ---伺服电动机运动控制系统的调试.pptx
- 成都高新区街道面向社会公开招聘2025年第一批次编外聘用人员笔试备考试题及答案解析.docx VIP
文档评论(0)