- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
? 动态初始化:使用运算符 new 为数组分配空间 ? 对于简单类型的数组,格式如下: 数据类型 数组名 [ ]=new 数据类型 [ 数组长度 ]; 或 数据类型 [ ] 数组名 =new 数据类型 [ 数组长度 ]; ? 对于对象类型的数组,需要经过两步空间分配 (1) 数据类型 数组名 [ ]=new 数据类型 [ 数组长度 ]; (2) 数组名 [0]=new 数据类型 ( 参数表 ); // 创建对象并赋给数组元素 … 数组名 [ 数组长度 -1]=new 数据类型 ( 参数表 ); 例如: String [ ] 福娃 = new String[5] ; 福娃 [0]= new String(“ 贝贝” ), 福娃 [1]= new String(“ 晶晶” ) , 福 娃 [2]= new String(“ 欢欢” ) , 福娃 [3]=new String( “ 迎迎” ) , 福 娃 [4]=new String( “ 妮妮” ); 第 6 讲 抽象类、接口与数组 抽象类 接口 数组 教学目标 ? 理解抽象类、抽象方法概念,熟悉它们的声明、使用; ? 理解接口的概念,熟悉其声明、实现方法,了解利用接口间 接实现多重继承的用法、标记接口作用; ? 掌握 Java 数组的声明、创建和使用 。 重点:抽象类、抽象方法、接口、数组的概念,熟悉它们的声 明、使用方法。 难点:概念较多,使用方法各异,需要实践来加以理解、体会 1. 抽象类 (abstract) (1) 引例 抽象是面向对象的一种重要方法 , 通过抽象我们能够 设计 一个更普通、更通用的类 ,例:从许许多多学生中,抽象出 Student 类,再从学生、工人、农民、 … 抽象出 Person 类。 下面,我们来分析一下以前大课讲过的一个例子: Shape 类 ( 周长、面积 ) Circle 类 ( 周长、面积 ) Rect 类 ( 周长、面积 ) Shape 类是假想出的 共同基 类 ,现实中不存在叫“形状” 的东西,若去实例化这样的对 象很勉强。为阻止生成 Shape 类对象,可以将该类声明为 抽 象类 。 (2) 抽象方法与抽象类 关键字 abstract 可用来 修饰方法和类 ,表示“ 尚未实现 ” 的含义: ? 如果方法的声明中使用了 abstract 修饰符,那么该方法就称 为抽象方法。 这表示类中不提供该方法的具体实现,即 不定 义方法体 。 格式:访问权限 abstract 返回类型 方法名 ([ 参数表 ] ); // 无方法体 例如:将前面 Shape 类的两个方法声明为抽象方法: public abstract double getArea(); public abstract double getPerimeter(); 注意:无方法体与方法体为空是两个不同的概念。 ? 如果一个类的声明中有 abstract 修饰符,那么该类就成为抽 象类。 格式: [ 访问权限 ] abstract class 类名 {……} 例如:将前面 Shape 类声明为抽象类: abstract class Shape {……} 说明: ? 抽象类不能进行实例化, 否则出现编译错误; ? 通常,一个抽象类至少定义一个抽象方法,但并不是说非 要定义一个抽象方法, 即使类体没有一个抽象方法也是允 许的; ? 当一个类中 包含有抽象方法时,该类一定要声明为抽象类; ? 当 子类继承了一个抽象类时 ,必须实现该抽象类中定义的全 部抽象方法, 否则,也是抽象类,必须加以声明 ; ? 当类实现了一个接口,但并没有实现该接口的所有方法时, 该类必须声明为抽象类 ,否则出错; ? 抽象方法 不能被 private 或 static 修饰 。为什么? ( 理由:抽象方法必须被子类所覆盖,如果说明为 private ,则 外部无法访问,覆盖也无从谈起。若说明为 Static ,即是不 创建对象也能访问: 类名 . 方法名 () ,这要求给出方法体,但 与抽象方法的定义相矛盾。 ) 问题:以下哪个是抽象方法的正确形式? (1) abstarct void example() (2) abstarct void exa
您可能关注的文档
最近下载
- 2024年新课标人教版小学体育水平三全册教案.docx
- 《UNIT 4 BODY LANGUAGE》大单元整体教学设计2025.docx VIP
- 人教版高中英语选择性必修第一册《UNIT 4 BODY LANGUAGE》大单元整体教学设计.docx
- 4.1 函数 2025-2026学年北师大版数学八年级上册.pptx VIP
- Unit 4 Amazing Plants and Animals 第5课时Project & Reflecting2025人教版英语八年级上册.docx
- 租地协议合同书(养殖场).docx VIP
- Unit 4 Amazing Plants and Animals Section B(1a-2d)课件 2025人教版英语八年级上册.ppt
- Unit 4 Amazing Plants and Animals Project & Reflecting 课件 2025人教版英语八年级上册.pptx
- Unit 4 Amazing Plants and Animals Section B 背默练课件 人教版英语八年级上册.ppt
- 初中英语新人教版八年级上册Unit 4 Amazing Plants and Animals 单元知识点(2025秋).doc VIP
文档评论(0)