当前位置: 首页 > news >正文

做网站小图片分类大连哪家公司做网站

做网站小图片分类,大连哪家公司做网站,通过微信发布诱导分享的美文或者集赞活动属于哪种网络营销方式,建设网站免费支持phpScala 跟 Java 一样,是一门面向对象编程的语言,有类和对象的概念。 1 类与对象 与 Java 一样,Scala 也是通过关键字 class 来定义类,使用关键字 new 创建对象。 要运行我们编写的代码,同样像 Java 一样,…

Scala 跟 Java 一样,是一门面向对象编程的语言,有类和对象的概念。

1 类与对象

与 Java 一样,Scala 也是通过关键字 class 来定义类,使用关键字 new 创建对象。

要运行我们编写的代码,同样像 Java 一样,需要一个 main 方法作为程序启动的入口。

我们知道,在 Java 中,main 方法是一个静态方法,但在 Scala 中,並沒有静态方法和静态属性。在 Scala 中,定义在单例对象 object 中的方法和属性就等价于 Java 中的静态方法和静态属性。

下面定义一个没有任何方法与属性的球员信息类,并在创建该类对象。

class FootballPlayer { }object App {def main(args: Array[String]): Unit = {print(new FootballPlayer())}
}

运行后,控制台打印 FootballPlayer@4cf777e8

2 成员变量

在定义类时,可以通过 valvar 定义类的成员变量。

valvar 的区别在于,val 定义的变量在初始化后就不能被改变,这类似于 Java 中的 final

下面例子,创建一个球员类,包含姓名、年龄、所在俱乐部,最后在 main 方法中打印球员对象信息:

class PlayerInfo {var playerName: String = "沙拿"var age: Int = 31var club: String = "利物浦"
}object App {def main(args: Array[String]): Unit = {val playerInfo = new PlayerInfoprintln(s"初始化球员是在${playerInfo.club}${playerInfo.playerName},今年${playerInfo.age}岁")playerInfo.playerName = "孙兴慜"playerInfo.age = 30playerInfo.club = "热刺"println(s"您选择的球员是在${playerInfo.club}${playerInfo.playerName},今年${playerInfo.age}岁")}
}

运行后,在控制台打印:

初始化球员是在利物浦的沙拿,今年31岁
您选择的球员是在热刺的孙兴慜,今年30岁

3 成员变量初始化值

在编写 Java 类时,如果我们不给成员变量指定默认值,那么对于基本类型,如 int、long、short、float、long 则初始化值为 0,引用类型为 null。

但在 Scala 中,如果不给成员变量指定默认值,就会出现编译错误:

在这里插入图片描述
编译器告诉我们,有3个未初始化的成员变量。

我们可以使用下划线 _ 初始化成员变量,例如:

class PlayerInfo {var playerName: String = _var age: Int = _var club: String = _
}object App {def main(args: Array[String]): Unit = {val playerInfo = new PlayerInfoprintln(s"初始化球员是在${playerInfo.club}${playerInfo.playerName},今年${playerInfo.age}岁")}
}

运行程序,控制台打印:

初始化球员是在null的null,今年0岁

可以得出这样的结论:定义成员变量时,需要使用 _ 初始化成员变量,初始化规则跟 Java 一致,int、long、short、float、long 则初始化值为 0,引用类型为 null。

4 成员方法

我们可以使用关键字 def 为类定义方法。例如,我们为球员类添加一个 hello 方法:

class PlayerInfo {var playerName: String = _var age: Int = _var club: String = _def hello(): String = {s"Hey buddy, I am ${this.playerName} of ${this.club}, ${this.age} years old!"}
}object App {def main(args: Array[String]): Unit = {val playerInfo = new PlayerInfoplayerInfo.playerName = "Cristiano Ronaldo"playerInfo.age = 39playerInfo.club = "Al-Nassr FC"println(playerInfo.hello())}
}

运行程序,控制台输出:

Hey buddy, I am Cristiano Ronaldo of Al-Nassr FC, 39 years old!

5 访问修饰符

Scala 也可以使用访问修饰符对成员变量、方法的访问进行控制:

5.1 public

Scala 没有 public 修饰符,因为,不加修饰符的属性和方法就是 public,即,在任何地方,类、属性、方法都可以被访问

5.2 private

5.2.1 修饰类

private 修饰的类可在当前包共生对象 被访问:
在这里插入图片描述

5.2.2 修饰成员变量或方法

private 修饰的成员变量、方法,只能在当前类共生对象 中访问:
在这里插入图片描述

5.2.3 private[this]

private[this] 修饰的属性和方法,只能在本类中被引用,共生对象也不能引用。

5.2.4 private[包名]

默认情况下,子包是无法访问被 private 修饰的 属性和方法的:
在这里插入图片描述
当我们需要在当前包及子包中共享类的属性和方法时,我们可以使用 private[包名],其中包名为当前类所在的包,表示,被修饰的目标可以在当前包和子包中被访问:
在这里插入图片描述

5.3 protected

与 Java 的 protect 不同,在 Scala 中被 protected 修饰的属性、方法,只能被当前类,子类访问。

在 Java 中,被 protect 修饰的属性和方法可以被同包下的类访问,但在 Scala 中,被 protected 修饰的属性和方法不能被同包类访问。
在这里插入图片描述

http://www.yayakq.cn/news/597059/

相关文章:

  • 单位做网站需要多少钱做网站做的好的公司有哪些
  • js特效网站模板下载做详情图的网站
  • 绥中网站建设分类信息网高端网站建设公司名称
  • 河北省城乡规划建设局官方网站语音app开发
  • 编辑网站的软件手机网站开发周记30篇
  • 网站前台乱码wordpress 逻辑代码
  • 网站建设应注重实用性建设有限公司官网
  • 贵州住房和城乡建设厅旧网站网站建设是指什么
  • 网站设计常见问题网页综合设计
  • 徐州住房与城乡建设部网站电子商务网站按其实现的技术可分为
  • 网站开发软件排行榜青岛联通网站备案
  • 北京 个人网站 备案网络规划与设计方案
  • 网站建设方案多少钱自己做视频类网站用哪个cms
  • 网站开发模块化开发织梦网站地图在线生成
  • 新闻源网站做黑帽seo企业微信app下载安装官方版
  • dtcms怎么做自己网站怎么学php网站开发
  • 天塔网站建设公司网站制作郑州
  • 网站建设与运营实训总结织梦网站源码下载
  • 南宁网站seo推广优化公司上海百度首页优化
  • 反馈网站怎么做人才网站app建设建议
  • 网站由哪几个部分组成湖北省住房和城乡建设厅
  • 专门做投票的网站有哪些买房网站怎么做
  • 做网站困难嘛天河网站建设开发
  • wordpress子目录多站点设置大连建设局网站地址
  • 合肥建设集团招聘信息网站wordpress 重新安装
  • 株洲做网站渠道电话shopify与wordpress
  • 建设企业网站就等于开展网络营销建网站公司浩森宇特
  • 网站设计策划书案例网站org免费注册
  • 承德公司做网站门户网站作用
  • 北京建设网站的射阳做企业网站多少钱