码迷,mamicode.com
首页 > 其他好文 > 详细

scala中的类和对象

时间:2020-04-24 17:27:02      阅读:84      评论:0      收藏:0      [点我收藏+]

标签:isp   ==   foreach   spl   执行   com   变量   world   one   

1.scala中定义在object中的变量,方法都是静态的,object叫对象,相当于java中的单例对象。object不可以传参,Trait也不可传参。
2.scala 中一行代码后可以写“;”也可以不写,会有分号推断机制。多行代码写在一行要用分号隔开。
3.定义变量用var,定义常量用val , a: Int ": Int" 是变量的类型,可以写也可以不写,不写会自动推断变量类型
4.scala中变量,类,对象,方法定义建议符合驼峰命名法。
5.class 是scala中的类,类可以传参,传参就有了默认的构造函数。类中的属性默认就有getter,setter方法。重写构造,第一行要调用默认的构造
6.当new 一个class时,类中除了方法不执行,其他都执行。同一个包下,class的名称不能相同。
7.scala中 如果一个class名称和object的名称一致,那么这个class叫做这个object的伴生类,这个object叫做这个class的伴生对象,他们之间可以互相访问私有变量。

技术图片
package com.bjsxt.scala

class Person(xname:String,xage:Int){
  private val name = xname
  var age = xage
  var gender = ‘m‘
  
//  println("************************")
  
  /**
   * 重写构造
   */
  def this(yname:String,yage:Int,ygender:Char){
    this(yname,yage)
    this.gender = ygender 
  }
  
  def showHello() ={
    println("hello world")
  }
  
  
}


object Person {
//    println("=====================")
  
//  val score = 200
  
  
  def main(args: Array[String]): Unit = {
    
      /**
       * if ... else
       */
//      val a = 100
//      if(a<50){
//        println("a 小于50")
//      }else if(a>=50 && a<=100){
//          println("50<=a<=100")
//        
//      }else{
//          println("a>100")
//      }
    
    /**
     * for
     * 
     * 1 to 10 这种表示是scala中的操作符操作。
     * 步长。
     */
      
//    println(1.to(10,2))
//    println(1 until (10,3))//1,4,7
    
//    for(i <- 1 to 10 ){
//      for(j <- 1 to 10){
//        println("i = "+i+" j="+j)
//      }
//    }
    
    /**
     * 小九九
     */
//    for(i <- 1 to 9;j <- 1 to 10){
//      if(i>=j){
//        
//          print(i+"*"+j+"="+i*j+"\t")
//      }
//      if(i==j){
//        println()
//      }
//    }
    
//    for(i <- 1 to 100 if(i%2==0) if(i==98)){
//      println(i)
//    }
    
//         val result =  for(i<- 1 to 1000 if(i%10==0)) yield i
//       println(res/ult)
//         result.foreach(a=>{
//           println(a)
//         })
//         
         
         
//    val person = new Person("zhangsan",18)
//    
//    println(person.name)
    
//    person.age = 100
//    println(person.gender)
//    
//    val p1 = new Person("diaochan",20,‘f‘)
//    println(p1.gender)
//    p1.showHello()
    
    /**
     * 变量 常量
     */
//    var b = 20
//    val a = 100
//    println(a)
    
    
  }
}
View Code

 

scala中的类和对象

标签:isp   ==   foreach   spl   执行   com   变量   world   one   

原文地址:https://www.cnblogs.com/xumaomao/p/12768794.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!