packagecom.zy.scala.extends_democlassPerson5 {}classStudent5extendsPerson5 object Student5 { def main(args: Array[String]) { val p: Person5=newStudent5 p match {//匹配是否为Person类或其子类对象caseper: Person5 => println("This is a Person5's Object!")//匹配所有剩余情况case_ => prin...
object _03ClassDemo{classPerson{// 定义成员变量varname=""varage=0}defmain(args:Array[String]):Unit={// 创建Person对象val person=newPersonperson.name="zhangsan"person.age=20// 获取变量值println(person.name)println(person.age)}} 3. 使用下划线初始化成员变量 scala中有一个更简洁的初始化成员变...
object testextendsApp {//1如果一个对象继承App可以不需要main方法直接运行/*def main(args: Array[String]): Unit = { println("aaa") }*/println("bbb")//2让一个object实现一个抽象类用关键字extends 重写未实现的方法User1.regist("小敏") User1.unregist("笑笑")//3让一个class实现一个抽象类用...
相反,Scala 使用伴生对象Object来实现静态方法的功能。 Object是一种特殊的单例模式,它允许你创建只有一个实例的类,当说单例时,指的是只能实例化一次的对象,注意Object 不接受参数. packageOOPobjectObjectsextendsApp{objectPersonObject{valHAND_NUMBER=2defcanFly:Boolean=false}println(PersonObject.HAND_NUMBER)// ...
object Test extends App { val fred = new Employee fred.name = "Fred" fred.salary = 50000 println(fred) } 执行以上代码,输出结果为: $ scalac Test.scala $ scala Test Employee[name=Fred][salary=50000.0] Scala 单例对象 在Scala 中,是没有 static 这个东西的,但是它也为我们提供了单例模式的实...
java的除了原始类型的所有类都有一个默认的父类Object,那么scala的统一父类是什么呢?这个是有人在群里问浪尖的一个问题,今天浪尖就给大家讲解一下Scala类型层次结构 在Scala中,所有的值都有类型,包括数值和函数。下图阐述了类型层次结构的一个子集。 1. Scala类型层次结构 ...
objectHelloWorld{/* 这是一个 Scala 程序 * 这是一行注释 * 这里演示了多行注释 */defmain(args:Array[String]){// 输出 Hello World// 这是一个单行注释println("Hello, world!")}} 空行和空格 一行中只有空格或者带有注释,Scala 会认为其是空行,会忽略它。标记可以被空格或者注释来分割。
// 1.ScalaApp 对象扩展自 trait Appobject ScalaApp extends App { // 2.验证单例 println(Utils.person == Utils.person) // 3.获取全局常量 println(Utils.CONSTANT) // 4.调用工具类 println(Utils.low("ABCDEFG")) }// 输出如下:Person 默认构造器被调用true固定常量abcdefg 3.2 伴生...
objectMainextendsApp{ println("Hello, Scala developer!") } 需要注意的是,这种方法在Scala 3中不再推荐使用。它们被新的@main方法取代了,这是在Scala 3中生成可以从命令行调用的程序的推荐方法。App目前仍以有限的形式存在,但它不支持命令行参数,将来会被弃用。