Java 应用与开发 - 面向对象编程进阶大纲 多态性 方法重载 关键字 static 关键字 final Java 应用与开发 面向对象编程进阶 PART2 王晓东 wangxiaodong@ouc.edu.cn 中国海洋大学 September 30, 2018 大纲 多态性 方法重载 关键字 static 关键字 final 学习目标 1. 理解多态和虚方法调用的概念,掌握其用法 2. 掌握方法重载的方法 3. 掌握 关键字的概念和使用方法 大纲 多态性 方法重载 关键字 static 关键字 final 大纲 多态性 方法重载 关键字 static 关键字 final 大纲 多态性 方法重载 关键字 static 关键字 final 接��� 多态性 方法重载 关键字 static 关键字 final 大纲 多态性 方法重载 关键字 static 关键字 final 什么是多态? 在 Java Java 中,子类的对象可以替代父类的对象使用称为多态。 O Java 引用变量与所引用对象间的类型匹配关系 ▶ 一个对象只能属于一种确定的数据类型,该类型自对象创建 直至销毁不能改变。 ▶ 一个引用类型变量可能引用(指向)多种不同类型的对象 ——既可以引用其声明类型的对象,也可以引用其声明类型 的子类的对象。 1 Person p = new Student(); //Student 是 Person0 码力 | 49 页 | 659.74 KB | 1 年前3
《Java 应用与开发》课程讲义 - 王晓东面向对象编程进阶 B 46 5.1 多态性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.1.1 多态的概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.1.2 多态用法示例 . . . . . 36 4.3 Java 访问控制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.1 Java 多态 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 6.1 Java 虚拟机架构 . . . 教学目标 1. 理解多态和虚方法调用的概念,掌握其用法 2. 掌握方法重载的方法 3. 掌握 static 属性、方法和初始化块的用法 4. 了解设计模式,掌握单例设计模式 5. 掌握 final 关键字的概念和使用方法 授课方式 理论课: 多媒体教学、程序演示 实验课: 上机编程 46 5.1. 多态性 � 5 � 教学内容 5.1 多态性 5.1.1 多态的概念 在 Java0 码力 | 330 页 | 6.54 MB | 1 年前3
Greenplum 分布式数据库内核揭秘李正龙 Confidential │ ©2021 VMware, Inc. Agenda 2 - Greenplum 分布式数据库简介 - Greenplum 集群化概述 - 分布式数据存储与多态存储 - 分布式查询优化器与执行器 - Greenplum 中文社区 3 Confidential │ ©2021 VMware, Inc. Greenplum 分布式数据库简介 Features Coordinator 提供高可用支持 l Mirror 则为 Segment 提供高可用支持 7 Confidential │ ©2021 VMware, Inc. Greenplum 分布式数据存储与多态存储 Hash/Randomly/Replicated Confidential │ ©2021 VMware, Inc. 8 数据存储分布化是分布式数据库要解决的第一个问题。 通过将海量数 个节点仅保存总数据量的 1/100,100 个节点同时并行处理,性能会是单个配置更强节点的几十倍。 Greenplum 不仅仅实现了基本的分布式数据存储,还提供了更高级更灵活的特性,譬如多种分布 策略、多级分区以及多态存储。 分布式数据存储 Confidential │ ©2021 VMware, Inc. 9 Greenplum 6 提供了以下 3 种数据分布策略: l 哈希分布 (Hash Distribution)0 码力 | 31 页 | 3.95 MB | 1 年前3
Go 2 Generics? A (P)review· Go 2 Generics? A (P)review 当我们谈论泛型时,我们在谈论什么? 4 多态是同一形式表现出不同行为的一种特性。在 编程语言理论中被分为两类: 临时性多态(Ad hoc Polymorphism)根据实参类型调用对应的版本,仅支持数量有限的 调用。也被翻译为特设多态。例如:函数重载 func Add(a, b int) int { return a+b } func Go 语言中不允许同名函数 Add(1, 2) // 调用第一个 Add(1.0, 2.0) // 调用第二个 Add("1", "2") // 编译时不检查,运行时找不到实现,崩溃 参数化多态(Parametric Polymorphism)根据实参类型生成不同的版本 ,支持任意数量的 调用。即泛型 func Add(a, b T) T{ return a+b } Add(1, 2) (P)review Conclusions 38 ● 回顾来看,Go 2 中基于合约的泛型设计,是可以理解的,经过多次迭代、吸取了诸多决策失误的经验 ○ 目前的实现粗略的说是一种基于特设多态实现的参数化多态 ● 目前的实现相对完整,但存在一些功能性的缺失,但更像是有意为之(语言更加复杂) ● 还存在非常多可改进的空间 ● 会像 try proposal 一样被废弃吗?个人看法:形势还不够0 码力 | 41 页 | 770.62 KB | 1 年前3
Laravel 5.1 中文文档 一对一 本文档由 Laravel 学院(LaravelAcademy.org)提供 113 一对多 多对多 远层多对多 多态关联 多对多的多态关联 2、定义关联关系 Eloquent 关联关系以 Eloquent 模型类方法的形式被定义。和 Eloquent 模型本身一样,关 联关系也是强大的查询构建器,定义关联关系 App\Post', 'App\User', 'c ountry_id', 'user_id'); } } 2.5 多态关联 2.5.1 表结构 多态关联允许一个模型在单个关联下属于多个不同模型。例如,假如你想要为产品和职工存 储照片,使用多态关联,你可以在这两种场景下使用单个 photos 表,首先,让我们看看构 建这种关联关系需要的表结构: staff id 5.3 获取多态关联 数据表和模型定义好以后,可以通过模型访问关联关系。例如,要访问一个职员的所有照片, 可以通过使用 photos 的动态属性: $staff = App\Staff::find(1); foreach ($staff->photos as $photo) { // } 你还可以通过访问调用 morphTo 方法名来从多态模型中获取多态关联的所属对象。在本例中,0 码力 | 307 页 | 3.46 MB | 1 年前3
Java 应用与开发 - 异常处理会自动调用该方法输出错误信息。 大纲 异常的概念及分类 Java 异常处理机制 捕获和处理 IOException O 一些知识点 ▶ 异常类型的多态性 FileNotFoundException 是 IOException 的子类,基于多态性机制,后一个 catch 语句也可以处理 FileNotFoundException,因此前一个 catch 语句块可以取 消,但这样就无法区分“文件不存在”或其他 sample.exception.IOExceptionSample.java 大纲 异常的概念及分类 Java 异常处理机制 捕获和处理 IOException O 一些知识点 ▶ 异常类型的多态性 ▶ 运行时异常 对于只可能产生 RuntimeException 的代码可以 不使用 try-catch 语句进行处理,如果对于这些相对安全的 代码仍然采用了 try 语句块的形式,则 try sample.exception.IOExceptionSample.java 大纲 异常的概念及分类 Java 异常处理机制 捕获和处理 IOException O 一些知识点 ▶ 异常类型的多态性 ▶ 运行时异常 ▶ 过度处理 如果试图捕获和处理代码中根本不可能出现的异 常,编译器也会指出这种不当行为。 课程配套代码 ± sample.exception.IOExceptionSample0 码力 | 33 页 | 626.40 KB | 1 年前3
Laravel 5.2 中文文档联到下单用户,Eloquent 使得组织和处理这些关联关系变得简单,并且支持多种不同类型 的关联关系: 一对一 一对多 多对多 远层一对多 多态关联 多对多的多态关联 2、定义关联关系 Eloquent 关联关系以 Eloquent 模型类方法的形式被定义。和 Eloquent 模型本身一样, 关联关系也是强大的查询构建器,定义关联关系为函数能够提供功能强大的方法链和查询 $this->hasManyThrough('App\Post', 'App\User', 'c ountry_id', 'user_id'); } } 多态关联 表结构 多态关联允许一个模型在单个关联下属于多个不同模型。例如,假如应用用户可以对文章 点赞也可以对评论点赞,使用多态关联,你可以在这两种场景下使用单个 likes 表,首 先,让我们看看构建这种关联关系需要的表结构: posts id } } 获取多态关联 数据表和模型定义好以后,可以通过模型访问关联关系。例如,要访问一篇文章的所有点 赞,可以通过使用动态属性 likes : $post = App\Post::find(1); foreach ($post->likes as $like) { // } 你还可以通过调用 morphTo 方法从多态模型中获取多态关联的所属对象。在本例中,就0 码力 | 377 页 | 4.56 MB | 1 年前3
Laravel 6.0 中文文档或者一个订单会被关联到下单用户,Eloquent 让组织和处理这些关 联关系变得简单,并且支持多种不同类型的关联关系: 一对一 一对多 多对多 远层一对多 远层多对多 一对一(多态) 一对多(多态) 多对多(多态) 定义关联关系 本文档由学院君提供 学院君致力于提供优质 Laravel 中文学习资源:https://xueyuanjun.com 1078 Eloquent 关联关系以 联关系的时候调用 using 方法,所有用于表示关联关系中间表的自 定义模型都必须继承 自 Illuminate\Database\Eloquent\Relations\Pivot 类,用于 自定义多态的多对多中间模型则继承 自 Illuminate\Database\Eloquent\Relations\MorphPivot 类。 例如,我们可以定义一个使用 RoleUser 中间模型的 Role: 表主键... 'id' // users 表主键... ); } } 多态关联 本文档由学院君提供 学院君致力于提供优质 Laravel 中文学习资源:https://xueyuanjun.com 1100 多态关联允许目标模型在单个关联下归属于多种不同的模型。 一对一(多态) 表结构 一对一的多态关联和简单的一对一关联类似,不同之处在于目标模型 在单个关联下可以归属于多种不同的模型。例如,Post0 码力 | 1442 页 | 14.66 MB | 1 年前3
Laravel 5.3 中文文档$morphClass 属性 可以在 Eloquent 模型上定义的$morphClass 属性已经被移除,以便定义一个“morph map”(变形 映射),定义变形映射可以支持渴求式加载并且解决使用多态关联关系引起的额外 bugs,如果你 之前使用了$morphClass 属性,需要使用如下语法将其迁移到 morphMap: Relation::morphMap([ 'YourCustomMorphName' 单用户,Eloquent 使得组织和处理这些关联关系变得简单,并且支持多种不同类型的关联关系: 一对一 一对多 多对多 远层一对多 多态关联 多对多的多态关联 2、定义关联关系 Eloquent 关联关系以 Eloquent 模型类方法的形式被定义。和 Eloquent 模型本身一样,关联关 系也是强大的查询构建器,定义关联关 学院(LaravelAcademy.org)提供 Laravel 学院致力于提供优质 Laravel 中文学习资源 499 多态关联 表结构 多态关联允许一个模型在单个关联下属于多个不同模型。例如,假设应用用户既可以对文章进行 评论也可以对视频进行评论,使用多态关联,你可以在这两种场景下使用单个 comments 表,首 先,让我们看看构建这种关联关系需要的表结构: posts0 码力 | 691 页 | 9.37 MB | 1 年前3
统一建模语言 UML 参考手册 - 基本概念可以被使用的条件 这被称为替代原理 来自于 ��������� ������ 该规则指出后代的实例可以用于任何祖先被声明使用的地方 例如 如果一个变 量被声明成存放贷款实例 则抵押贷款对象是合法的取值 � 概括使多态操作成为可能 即操作的实现 方法 由实际对象的类来决定 而非调用 者显式指定的类 之所以如此 是由于双亲类可能有多个孩子 对于定义于整个类层次上 操作 每个孩子具有自己的实现 例如 对于抵押贷款和汽车贷款 可以存放双亲的类对象 则任何子类的对象均可以被使用 每个均具有自己的特殊操作 这一点非常有意义 因为新的类可以在日后加入 而无需修改已有的多态调用 例如 新 的贷款类型被加入后 原有的使用 ���������������� 操作的代码无需修改 双亲类中的多态 操作可无实现 而由孩子类提供具体实现 这种不完全的操称为抽象操作 � 概括的另一个目的是共享对祖先的描述 允许对元素进行增量描述 这被称之为继承 ��������������� 动作� ������� 动作序列� ���������������� 对象� ������� 对象流状态� ������������������ 多� ����� 多态� ������������ 多重分类� ������������������������ 多重继承� ��������������������� 中文� 英文� 发送� ����� 发送者�0 码力 | 123 页 | 2.61 MB | 1 年前3
共 66 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7













