首页 > 试题广场 >

下面代码的运行结果是()

[单选题]

下面代码的运行结果是()

public static void main(String[] args){
    String s;
    System.out.println("s="+s);
}


  • 代码编程成功,并输出”s=”
  • 代码编译成功,并输出”s=null”
  • 由于String s没有初始化,代码不能编译通过。
  • 代码编译成功,但捕获到NullPointException异常
推荐
局部变量没有默认值
编辑于 2017-03-19 10:46:34 回复(20)

C

成员变量有初始值,而局部变量没有初始值得。本体中的s定义在方法中所以为局部变量-没有初始值。变量没有初始值就使用了,编译通不过

发表于 2017-04-03 15:21:17 回复(10)
类中实例变量可以不用初始化,使用相应类型的默认值即可;方法中的定义的局部变量必须初始化,否则编译不通过。
发表于 2017-03-30 20:24:23 回复(5)
在java中,局部变量(也叫方法变量),没有默认值,如果在声明时未付初值而在接下来的程序中直接使用该变量的值将由编译器检查出错误。
而与之相对的是成员变量(也叫类成员),如果是八种基本数据类型(不包括包装类,包装类属于非基本类型,他们是byte,short,int,long,float,double,boolean,char),在没有被手动赋值的却在程序中被使用的情况下,将被赋予初值:
byte,short,int,long=0
float,double=0.0
char=' '(空格字符)
boolean=false
下图为证(注意我在char中的鼠标光标):

发表于 2017-10-06 20:46:17 回复(4)
很容易以为会输出null值,运行后才发现Java中所有定义的基本类型或对象都必须初始化才能输出值。
发表于 2017-01-01 01:56:14 回复(3)
程序入口,public static void main(String[] args){}也是方法,方法内部的变量是局部变量,局部变量必须初始化,但是全局变量不需要初始化
发表于 2017-07-19 18:11:15 回复(1)
局部变量必须赋初始值,将String s;放到 main方法外面,并声明为static类型,输出的就是 B 了。
发表于 2017-03-06 19:11:51 回复(0)
static String s;  public static void main(String[] args) {
    System.out.println("s="+s); }

如果这样的话,输出是s=null

编辑于 2017-03-03 12:26:36 回复(1)
成员变量与局部变量的区别 1、在类中的位置不同 成员变量:在类中方法外面 局部变量:在方法或者代码块中,或者方法的声明上(即在参数列表中) 2、在内存中的位置不同,可以看看Java程序内存的简单分析 成员变量:在堆中(方法区中的静态区) 局部变量:在栈中 3、生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 局部变量:随着方法的调用或者代码块的执行而存在,随着方法的调用完毕或者代码块的执行完毕而消失 4、初始值 成员变量:有默认初始值 局部变量:没有默认初始值,使用之前需要赋值,否则编译器会报错(The local variable xxx may not have been initialized)
发表于 2018-09-02 08:19:27 回复(0)
敲重点!!!
成员变量才有初始值,而局部变量没有初始值!!!
发表于 2022-03-06 16:46:03 回复(0)
成员变量有默认值,而局部变量没有默认值
发表于 2017-06-27 08:09:24 回复(0)
   全局变量  String 类型的默认值 为 null
   局部变量没有默认值
切记:这里是局部变量,所以代码有错,不能编译通过
发表于 2018-12-18 21:15:13 回复(0)
选C


发表于 2018-07-16 09:44:33 回复(0)
方法中的是成员变量,需要初始化,不然会报错~
发表于 2021-12-16 17:50:24 回复(0)
类中变量有默认值,方法中必须得初始化
发表于 2021-03-21 22:36:15 回复(0)
局部变量必须初始化,否则不能编译通过
编辑于 2019-04-08 15:14:48 回复(0)
类的成员变量具有默认的初始值,而局部变量没有,在使用前必须进行初始化,不然会编译出错。

发表于 2018-08-15 16:22:45 回复(0)
要记得局部变量没有默认值
发表于 2018-03-01 22:21:16 回复(0)
局部变量没有初始化值,所以需要声明时定义
发表于 2017-03-11 11:22:32 回复(0)
局部变量没有默认值,必须初始化
发表于 2017-03-06 22:19:31 回复(0)
成员变量不需要初始化,局部变量必须初始化,否则编译报错
发表于 2023-05-31 12:54:59 回复(0)