java与scala基本编写代码的对比1

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();

//输出的结果为

}

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值