java:
//创建一个私有学生类
public class Student{
private String name;
private Integer age;
private static String school="xuexiao"
//构造方法(name,age) 快捷键Alt+insert
public Student(String name,Integer age)
this.name=name;
this.age=age;
}
//创建类,后面可进行调用输出
public void printInfo(){
//快捷键sout school作为静态类型,不能用this来使用,需要用 类名.school才可以获取
System.out.println(this.name + " " +this.age + " " +Student.school);
}
//快捷键 psvm
public static void main(String[] args){
//先new Student,括号里面姓名是字符串打上引号,name会自动出现,年龄为整型,不要打引号,在括号输入 .var会自动补全前面的Student allice和Student bob
Student alice = new Student(name:"alice",20);
Student bob = new Student(name:"bob",23);
//调用printInfo,将结果输出
alice.printInfo();
bob.printInfo();
}
}
//输出的结果为
scala:
为了与前面的java使用同一类Student,在idea中选择Scala Class中的Class 而不是Object
//scala与java不同可直接将属性放入类后面,用括号括起来
class Student(name:String,age:Int){
def printInfo():Unit={
//this.name,this.age在scala中可直接将this去掉,在类中直接申明了
println(name + " " +age + " " + Student.school)
}
}
//引入伴生对象(与前面的Student相伴相生,里面的私有成员都是可以访问的) //全局只有一份的属性放入全局只有一份的伴生对象当中,要用的时候可直接基于伴生对象进行访问即可 //申明伴生对象后,前面的Student已经不报红了,school显示是红色 //伴生对象是为了解决JAVA里面static问题的
//Student.school会显示红色,是正常的,后面会解决
//object:关键字,声明一个Student(伴生对象)
object Student{
//Student.school红色消失
//把school申明成String类型,申明成伴生对象Student里面的一个属性xuexiao
val school:String="xuexiao"
//快捷键main+tab
//main 方法:从外部可以直接调用执行的方法
//def 方法名称(参数名称:参数类型):返回值类型={方法体}
//作一个测试(将main方法放入object里面)
def main(args:Array[String]):Unit={
//先new Student,括号里面姓名是字符串打上引号,name会自动出现,年龄为整型,不要打引号,在括号输入 .var会自动补全前面的Student allice和Student bob
Student alice = new Student(name:"alice",20);
Student bob = new Student(name:"bob",23);
//调用printInfo,将结果输出
alice.printInfo();
bob.printInfo();
//输出的结果为
}
}