1·
Person就是一个类;理解为变量名。
首字母是大写的!
类名一般来说是名词
val 不可修改
var 可修改
object w23 {
class Person(){}
class Student(){
var name:String ="神"
var age:Int = 18
}
var name:String ="神"
var age:Int = 18
def main(args: Array[String]): Unit = {
val p1 = new Person()
val s1 = new Student()
println(s1.name)
s1.name="xxx"
println(s1.name)
}
}
2·
object w24 {
class Student() {
var name:String="xxx"
var age:Int = 18
def say(): Unit = {
println(s"${name},${age}")
}
}
def main(args: Array[String]): Unit = {
val s1=new Student()
s1.say()
}
}
object w26 {
class Student(var name:String ="xxx", var age:Int =18) {
println("Student.....被调用了....")
def say(): Unit = {
println(s"${name},${age}")
}
def main(args: Array[String]): Unit = {
val s1 =new Student()
s1.say()
val s2 =new Student("####,19")
s2.say()
}
}
}
3·
object w25 {
class Triangle(var a: Double = 1.0, var b: Double = 1.0, var c: Double = 1.0) {
println(s"${a} ${b} ${c}")
def check(): Boolean = {
return a + b > c && b + c > a && a + c > b
}
def getArea():Double={
if (check()){
var s =(a+b+c)/2
s=Math.sqrt(s*(s-a)*(s-b)*(s-c))
return s
} else {
println(s"${a} ${b} ${c} 不能构成三角形")
return -1
}
}
}
def main(args: Array[String]): Unit = {
val t1 = new Triangle(3, 4, 7)
println(t1.getArea())
val t2 = new Triangle(3, 4, 3)
println(t1.getArea())
}
}
4·
object w26 {
class Student(var name:String, var age:Int, var gender:String="男", var nav:String="汉族") {
def say(): Unit = {
println(s"${name},${age},${gender},${nav}")
}
}
def main(args: Array[String]): Unit = {
var s1 = new Student("小明", 19)
s1.say()
var s2 = new Student("小花", 18, "女", "回族")
s2.say()
}
}
5·
object w28 {
class Register(val name: String, var email: String, var pwd: String, var phone: String) {
println("主构造器被调用")
def this(phone: String, pwd: String) {
this("随机用户xxxx", "xxxx@qq.com", pwd, phone)
println("辅助构造器被调用")
}
def this(email: String, pwd: String, name: String) {
this(name, email, pwd, "13600000000")
println("辅助构造器被调用")
}
def say(): Unit = {
println(s"姓名: ${name},邮箱:${email},密码:${pwd},手机号:${phone}")
}
}
def main(args: Array[String]): Unit = {
val r1 = new Register("13617885566", "123456")
val r2 = new Register("9456651@qq.com", "123456", "小明")
r1.say()
r2.say()
}
}