网站大量收购闲置独家精品文档,联系QQ:2885784924

《数据实时处理flink》课件——第二章 大数据必备编程知识.pptxVIP

《数据实时处理flink》课件——第二章 大数据必备编程知识.pptx

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

大数据必备编程知识;本章先回顾和复习一下必备的编程知识,了解这些编程知识有助于我们快速读懂各类源码,深刻理解FlinkAPI及其背后的原理。本书主要基于Java的相关知识,也会在必要的地方兼顾Scala的相关知识。;本章所涉及的主要内容。

熟悉继承和多态。

了解泛型的使用和特点。

了解函数式编程。

;继承和多态

泛型

函数式编程;案例:动物类(Animal)和鱼类(Fish)

继承关系保证所有动物子类都具有动物类的属性和方法

子类有自己的属性和方法。

除了动物,还有很多其他事物也会移动,使用接口(interface)来抽象“移动”。;Java的继承:

继承类extends

实现接口implements

;重写:子类和父类都定义同名方法,子类的方法会覆盖父类中已有的方法。

重载:多个同名方法,这些方法名字相同、参数不同、返回类型不同。;继承和多态

泛型

函数式编程;案例:Java中的List和ArrayList

ArrayList是一个泛型类,List是一个泛型接口

ArrayList泛型是一种集合容器,可以向这个集合容器中添加String、Double以及其他各类数据类型。没必要创建StringArrayList、DoubleArrayList等类。;类名后面加上T

类内部的一些属性和方法都可以使用泛型T

泛型规范:

T代表一般的任何类。

E代表元素(Element)或异常(Exception)。

K或KEY代表键(Key)。

V代表值(Value),通常与K一起配合使用。

;与泛型类类似,使用符号

可以继承并实现这个接口;泛型方法可以存在于泛型类中,也可以存在于普通的类中。

泛型方法的类型E和泛型类中的类型T可以不一样。泛型方法是泛型类的一个成员,泛型方法既可以继续使用类的类型T,也可以自己定义新的类型E。

;Java泛型信息只存在于代码编译阶段,当程序运行到JVM上时,与泛型相关的信息会被擦除。

对于绝大多数应用系统开发者来说影响不太大,对于框架开发者来说,必须要注意。;继承和多态

泛型

函数式编程;适合进行并行计算的一种编程范式

非函数式编程:创建中间变量,分步执行

函数式编程:与数学表达式更相似

实现单个函数,将零到多个输入转换成零到多个输出。比如,add()将两个输入转化为一个输出。

将多个函??连接起来,实现所需业务逻辑。比如,将add()、multiply()连接到一起。;Lambda表达式被一些编程语言用来实现函数式编程。

一个箭头符号-,两边连接着输入参数和函数体。;输入参数:

接收零到多个输入参数

程序员可以提供输入类型,也可以不提供类型,让代码根据上下文去推断

参数可以放在圆括号()中,多个参数通过英文逗号,隔开

函数体:

可以有一到多行语句

函数体有多行内容,必须使用花括号{}

输出的类型与所需要的类型相匹配;Lambda表达式本质是一种接口,它要实现一个函数式接口(FunctionalInterface)中的虚方法

函数式接口是一种接口,并且它只有一个虚方法。

@FunctionalInterface注解;Java8之后推出的,专注于对集合(Collection)对象的操作。

右侧案例:数据先经过stream()方法被转换为一个Stream类型,后经过filter()、map()、collect()等处理逻辑,生成我们所需的输出。各个操作之间使用英文点号.来连接,这种方式被称作链式调用(MethodChaining)。

链式调用:将多个函数连接起来。

Flink的API是面向数据集或数据流的操作。这些操作分布在大数据集群的多个节点上,并行地分布式执行。;本章中,我们回顾了Flink开发经常用到的继承和多态、泛型和函数式编程等概念。在之后的编程学习中可以利用这些内容更好的实现程序业务逻辑。

;谢谢

文档评论(0)

青柠职教 + 关注
实名认证
服务提供商

从业10年,专注职业教育专业建设,实训室建设等。

1亿VIP精品文档

相关文档