Scala 类与单例

1. 类的基本操作

1.1. 类的定义

类或者类型,就是对客观的一类事物的抽象。用一个class关键字来描述,在这个类中可以拥有这一类事物的属性,行为等等。

​ 或者说就是用计算机的语言来描述的一类事物,就是类,在java,scala中都是用关键字class来标识。

​ 因为类是对一类事物的抽象,所以不具备具体的行为执行能力,要想完成具体的操作,就需要使用该类的实例或者对象。

//创建scala中的一个类
object _01ClassOps {
   
	def main(args: Array[String]): Unit = {
   
		/*
			scala中类对应对象的构建,和java一模一样 使用关键字new,
			以及构造函数来完成实例的创建
			scala可以使用默认的无参构造器完成实例创建,
			同时一类如果有无参构造器,在创建对象的时候,可以省略掉()
		 */
		val p = new Person()
//		val p1 = new Person

//		p.name =
		p.setName("刘嘉豪")
		p.setAge(169)

		p.show()
	}
}


class Person {
   
	/*
		_的作用就相当于java中private String name;
		如果要使用_,前面的成员变量就应该指定数据类型
	 */
	private var name:String = _

	private var age = 13
	def show(): Unit = {
   
		println(s"name=${name}\tage=${age}")
	}

	def setName(name:String):Unit = {
   
        //成员变量和局部变量命名冲突之后使用this关键字来进行区分
		this.name = name
	}

	def getName() = this.name
	//单行函数
//	def setAge(age:Int) = this.age = age
	def setAge(age:Int): Unit = {
   
		if(age < 0 || age > 150) {
   
			throw new RuntimeException("地球不欢迎你~")
		}
		this.age = age
	}

	def getAge = this.age
}
1.1.1. getter/setter操作

在scala中使用@BeanProperty注解来给成员变量提供getter/setter,该注解和private访问权限修饰符不可共存.
这种方式定义类似java bean的操作,在scala中几乎不用,java bean的主要作用是啥:
说白了就是在各个业务线/层之间传递数据,scala提供了另外的一种结果来模拟java中的bean–case class(样例类,样本类)

class Student {
   
	@BeanProperty var name:String = _

	private var age = 13
}

1.2.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值