Java基础知识,求高人详解

如下图剪头所示创建对象,然后在括号里面加了一个参数,到底什么意思啊!如何传递的,如何工作的,为什么能输出123呢!图片说明图片

Long是一个对象类型,new Long(a)可以理解为创建一个long对象并给她赋值为a,toString是把long变成字符串,最后一行是输出打印,总的来说就是,先定义一个长整形的a=123,然后把a赋值给Long对象,在把long对象转换
为字符串,最后输出这个字符串,所以输出还是123

Long 是一个对象类型,new Long(long a)是它的构造方法。上述表示构造了一个值为123的Long实例。tostring是Long对象的方法,将Long的值(123)转为字符串。

这几句代码简单到没法解释的程度了,如果一定要解释一番,那么我只能说Long这个类里有个value属性,a作为构造参数就是为value属性赋值。
Long这个类重写了toString方法,toString方法返回的就是value的字符串形式。

定义了一个long类型的变量并赋值为123,创建long的实例对象,将a放入实例对象中(等同于为实例对象long赋值),通过调用tostring()方法,将long的值转换为字符串
最后输出的123其实是字符串类型。

本质就是包装类型和原始类型之间的自动转换,就是自动装箱和拆箱。

因为new触发了代码,向long类型的构造函数传入了a的值,并赋值给了新变量aa,然后在tostring()后,输出了这个字符串“123”