Scala入门到精通——第十六节 泛型与注解

  • 时间:
  • 浏览:0
  • 来源:uu快3IOS下载_uu快3app下载_和值

scala.collection.immutable.HashMap类对应每段源码:

2 检查任务管理器中要我再次出显的语法大问题

从上端的代码没办法看出,scala泛型对应于java中的泛型,掌握了java中的泛型也就掌握了scala中的泛型

1 泛型类

此时在Person类前加@serializable则都还可不可以 对对象进行正常序列化

上述annotation生成的文档内容如下:

下面举下对象序列化的例子:

annotation具有如下语法格式:

Annotation是某种对任务管理器代码进行描述的形状化信息。Annotation都还可不可以 分布在任务管理器的任何地方,都都还可不可以 注解变量、类、辦法 、参数等多种元素,它的主要功能有以下几种:

1 自动生成scala文档

要我给成员变量加@transient注解一句话,则相应的成员变量不用被序列化,此时要我进行反序列化一句话,对应成员变量为null,如:

泛型用于指定辦法 或类都还可不可以 接受任意类型参数,参数在实际使用时才被取舍,泛型都还可不可以 有效地增强任务管理器的适用性,使用泛型都还可不可以 使得类或辦法 具有更强的通用性。泛型的典型应用场景是集合及集合中的辦法 参数,都还可不可以 说同java一样,scala中泛型无处找不到,具体都还可不可以 查看scala的api

添加公众微信号,都还可不可以 了解更多最新Spark、Scala相关技术资讯

注解的常用场景包括volatile,transient,native,SerialVersionUID,serializable5个,用于对变量或辦法 进行注解,其中volatile用于标识变量要我会被多个任务管理器共同修改,它都有任务管理器安全的;transient用于标识变量是瞬时的,它不用被持久化;native用于标识算法来自C或C++代码实现

多个泛型参数的使用情形:

当然,annotation还有其它功能,上端某种可是平时在编写任务管理器时最为常用的功能

3 规定任务管理器行为