版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、8.1.1抽象类的定义,抽象类名成员变量;方法()/通用方法抽象方法();/抽象方法可以包括抽象类中的一般方法和抽象方法。抽象类代表抽象概念,不能作为对象实例化。8.1.2抽象类的应用,例8-1定义了一个表示“形状”的抽象类,它包括一个计算形状面积的抽象方法。继承抽象类来定义三角形、矩形和圆形。创建一个三角形、一个矩形和一个圆形,并将它们存储在一个数组中。访问数组元素以输出各种图形的区域。抽象类Shape /定义了抽象类抽象公共双区域();/抽象方法,类三角形扩展了Shape /定义三角形私有双a,b,c;公共三角形(双a,双b,双c)。this.b=bc=c。公共双人间()双人间p=(a b
2、 c)/2;返回Math . sqrt(p *(p-a)*(p-b)*(p-c);三角形,定义矩形,类矩形扩展形状/定义矩形专用双宽,双高;公共矩形(双j,双k)宽度=j;高度=k;公共双面积()返回宽度*高度;定义一个圆,类圆扩展形状/定义一个圆私有双r;公共圈(双r)this . r=r;公共双区()返回3.14 * r * r,公共类测试公共静态无效主(字符串参数)形状s=新形状3;s0=新三角形(25,41,50);s1=新矩形(15,20);s2=新圆(47);for(int k=0;k .长度;k)系统输出打印(sk . area();8.2.1接口定义,公共接口名称扩展父接口名称
3、列表公共静态最终域类型域名=常数值;公共抽象返回值方法名(参数列表)抛出异常列表;声明接口可以给访问控制器;一个接口也可以继承多个父接口,用逗号分隔。系统默认界面中所有属性的修改都是公共静态的;系统默认界面中所有方法的修改都是公共抽象的。接口定义示例,接口可复制对象副本();8.2.2接口实现、类书实现可复制字符串book _ name/标题字符串图书id;/ISBN公共图书(字符串名称,字符串id)图书_名称=名称;图书id=id公共对象副本()返回新图书(图书名称,图书标识);是否可以是图书类型,实现8.2.2接口(续),公共字符串toString()返回图书标题:图书_名称,图书编号=图
4、书_ id公共静态无效主(字符串参数)书x=新书(Java编程,ISBN 8359012);system . out . println(x);system . out . println(x . copy();书y=(书)x .副本();system . out . println(y);对于接口的实现,注意以下问题,一个类可以实现多个接口。用逗号分隔接口;如果实现接口的类不是抽象类,则指定接口的所有抽象方法都必须在类的定义部分实现;换句话说,实现接口的类必须用具体方法覆盖接口中定义的抽象方法;默认情况下,接口的抽象方法的访问限定符是公共的,在实现它时,应该在方法头中由公共显式修改。,模糊问
5、题,界面Frob浮动v=2.0f/接口定义类父int v=3;/父类定义类测试扩展父实现frob公共静态void main(字符串参数)新测试()。printv();无效打印(系统)打印(超级打印)/2;8.3嵌入类,公共类外部一个私有int x=3;私有int y=4;公共空间外部方法()内部方法=新内部方法();ino . InnerMethod();公共类InnerOne /嵌入类private int z=5;int x=6;public void inner method()system . out . println(y为y);System.out.println(z是z);sys
6、tem . out . println(x=x);system . out . println(this . x=this . x);system . out . println(Outrone . this . x=Outrone . this . x);嵌入式类可以访问外部类的成员。例8-3是一个简单的例子。为了解释,编译一个嵌入类生成的字节码文件名是:OuterOne $ InnerOne.class嵌入类可以访问外部类的成员。嵌入式类可以用公共的、受保护的和私有的访问控制器来修饰,嵌入式类的对象可以在主方法中间接创建。在主方法中,要创建嵌入类的对象,必须首先创建外部类对象,然后创建外部
7、类对象。内部1=新的外部1()。新的内部版本();I . InnerMethod();例8-4静态嵌入类例,公共类外两个私有静态int x=3;私有int y=5;公共静态类Innertwo /静态嵌入类公共静态无效方法()系统。out.println (x是x);公共无效方法2(). system . out . println(x为x);/嵌入类公共静态void main(字符串arg)的结尾外部两个.内部两个. method();新外套。Innertwo()。方法中嵌入类,公共类外部两个私有int x=3;public void OutMethod(int m)final int n=x
8、2;类InnerTwo /方法中的嵌入类private int y=5;public void inner method()system . out . println(y为y);System.out.println(n为n);System.out.println(x为x)。/嵌入类结束,只能访问外部方法中的常量(经过最终修改)和方法中的嵌入类inner two in2=new inner two();in2 . InnerMethod();公共静态无效主(字符串参数)外部二=新外部二();我的。外部方法(8);示例8-5匿名嵌入类的使用。接口样本void TestMethod();公共类An
9、onymousInner void OuterMethod()新示例()公共void testMethod()system . out . println(只是测试);test method();/调用嵌入类中定义的方法。-字节码文件是AnonymousInner $ 1.class如果有更多的匿名嵌入类要根据递增的序号来命名,接口将派生出匿名嵌入类,根据嵌入类创建对象,加载问题,并定义接口形状,包括一个方法大小(),它设计了“矩形”、“圆形”、“圆柱”等类来实现形状接口,其大小()方法分别表示矩形面积、圆形面积和圆柱体积的计算。创建三个分别代表“矩形”、“圆形”和“圆柱”的对象,并将它们存储在一个形状类型的数组中,并通过调用size()方法输出数组中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年中医基础理论考试试题及答案
- 专利申请权转让协议书7篇
- 2026海洋科普知识赛题含解析及答案
- 2026年湖南株洲中小学教师招聘考试题库及答案
- 2025年辽宁阜新市中小学教师招聘考试真题解析含答案
- 池河镇八年级历史下册 第四单元 国防建设与科技文化的发展 第19课 文化教育事业的发展教学设计1 北师大版
- 北师大版 (2019)必修 第三册Unit 8 Green livingLesson 1 Roots and Shoots教案设计
- 活动4 制作补间动画教学设计初中信息技术人教蒙教版八年级下册-人教蒙教版
- 第一单元认识几何画板第1课《用于学习和研究几何规律》教学设计 人教版初中信息技术八年级下册
- 単元一復習 テープレコーダー教学设计新编日语第二册重排本-新编日语
- 国家集采药品培训
- 智慧校园全面建设方案
- 合同履行情况验收报告
- 玻璃瓶合同书模板
- 2024年华夏银行股份有限公司校园招聘考试试题完整
- 《陆上风电场工程概算定额》NBT 31010-2019
- 2024回弹法检测岩石抗压强度技术规程
- 二次安全措施票培训
- 残疾学生送教上门备课、教案
- JTGT F20-2015 公路路面基层施工技术细则
- 保洁礼节礼仪培训
评论
0/150
提交评论