为了账号安全,请及时绑定邮箱和手机立即绑定

java System包含三个预定义的流变量,请问这个预定义的流变量是什么意思啊?

java System包含三个预定义的流变量,请问这个预定义的流变量是什么意思啊?

沧海一幻觉 2019-04-04 11:07:02
java System包含三个预定义的流变量,请问这个预定义的流变量是什么意思啊
查看完整描述

4 回答

?
喵喔喔

TA贡献1735条经验 获得超5个赞

在一个类中是不能调用另外一个类方法中定义的局部变量的,若想调用可以按以下几种方法做: 1、将局部变量定义为类中的成员变量,然后通过对象来调用。 2、将局部变量用final关键字定义为常量,然后通过类名.常量名来...

查看完整回答
反对 回复 2019-04-13
?
HUH函数

TA贡献1836条经验 获得超4个赞

Java里面预定义是指,已经定义好的类,例如String,Integer等等;
这些预定义的类都在java.lang包里面,jvm默认会加载这个包里面的所有类到JVM。

对于其他预定义类,例如java.util包里面的,要是的就必须引入才可以。
例如,你要使用ArrayList,你就必须在程序前面
import java.util.ArrayList;
对于String这些在java.lang包里面的就不用引入
例如下面就是多余的:
import java.lang.String;

查看完整回答
反对 回复 2019-04-13
?
慕慕森

TA贡献1856条经验 获得超17个赞

int 是java的基本数据类型;这种类型的定义是通过诸如int a = 3;的形式来定义的。

如果int a =
3;这里的a是一个指向int类型的引用,指向3这个字面值。存在栈中,栈有一个很重要的特殊性,就是存在栈中的数据可以共享。
这里有

int a=3;
int b=3;
int c= 3;

编译器先处理int a =
3;首先它会在栈中创建一个变量为a的引用,然后查找有没有字面值为3的地址,如果没找到,就开辟一个存放3这个字面值的地址,然后将a指向3的地址。
接着处
理int b = 3;在创建完b这个引用变量后,由于在栈中已经有3这个字面值,便将b直接指向3的地址。这样,就出现了a与b同时均指向3的情况。
同理 int c = 3 也是这种情况。

查看完整回答
反对 回复 2019-04-13
?
12345678_0001

TA贡献1802条经验 获得超5个赞

同一个地址。
Java中分为栈内存(存放局部变量,也就是你说的a、b、c)和堆内存(存放new出的对象、代码、static变量和常量池(你说的3就是常量)),也就是说常量3只在内存中存了一次。

查看完整回答
反对 回复 2019-04-13
  • 4 回答
  • 0 关注
  • 1137 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信