首页 > 试题广场 >

类方法中可以直接调用对象变量。( )

[单选题]
类方法中可以直接调用对象变量?
  • 正确
  • 错误
静态方法中不能调用对象的变量,因为静态方法在类加载时就初始化,对象变量需要在新建对象后才能使用
发表于 2017-06-05 19:45:38 回复(22)
我真的很晕这些题,如果题目明确指出是“直接调用”那么我肯定认为是错误的,但如果仅仅是写出“调用”那么我仍然是可以new出一个对象然后进行调用,此时这题就是正确的。
发表于 2017-06-01 17:22:57 回复(12)
当试图在类方法(也就是静态方法)中调用类的非静态变量时,eclipse 给出了这么一句话 Cannot make a static reference to the non-static field xxx(xxx代表你所写的非静态域的名字)。这句话意思很简单,就是不能静态方法中引用非静态的域。
原因也很简单关于类初始化的过程中,静态域是随着类加载就完成了初始化,而非静态域此时都没有完成初始化,你引用它肯定就出错了。
如有不对之处,还请指出!
发表于 2017-05-19 16:49:44 回复(9)
类方法是属于一个类的 是类的静态方法。调用方法是 类名.方法名(); 类方法主要用于工具类的方法。 类变量也叫静态变量,也就是在变量前加了static 的变量; 实例变量也叫对象变量,即没加static 的变量; static修饰的方法不能直接调用没有static的方法 要new一个对象出来 才能调用
发表于 2018-04-04 18:07:10 回复(2)
类方法=类的静态方法 类变量=类的静态变量 对象方法=类的非静态方法 对象变量=类的非静态变量 所以static方法调用非静态变量不行,必须初始化对象之后调用
发表于 2021-03-05 15:12:54 回复(0)
静态方法中调用非静态变量时不行
编辑于 2017-11-07 16:15:10 回复(0)
类方法指的是类的静态方法
发表于 2017-06-12 20:42:45 回复(0)
千万别忽略了静态方法,静态方法是不能调用对象的变量,因为他们初始化的时期都对不上,静态方法是在类加载时就初始化了,而对象变量需要在新建对象,也就是实例化后才可以使用。
发表于 2021-12-17 11:42:03 回复(0)
我还寻思对象变量是什么鬼,直接自己new一个String 也是对象变量啊,竟然隐含说的是成员变量。。
发表于 2019-03-27 19:32:04 回复(1)
选B
同一个类中的成员变量是在类加载完成后,实例化时才用的,比静态方法出现的晚,可能不能访问。
编辑于 2018-06-29 11:35:20 回复(0)
这个从JVM层面看就会显得很合理了,如果硬记的话就很容易忘记的。
首先类方法是指被static修饰的方法,类方法在类加载的时候就会分配内存,但是对象变量(成员变量)在实例化的时候才分配内存,所以在对象变量不存在的时候,类方法已经存在了,此时调用类方法调用不存在的对象变量属于非法操作,所以不允许。
发表于 2023-06-26 19:33:43 回复(0)
静态方法不能调用对象变量
发表于 2022-10-12 23:13:48 回复(0)

此处的类方法指的是静态方法,对象变量指的是非静态变量

发表于 2022-07-25 15:51:11 回复(0)
类方法就是静态方法,是属于静态域的,对象变量是非静态变量,是属于非静态域的。静态域在类初始化就存在了,这时还没有初始化非静态域,调用非静态域的方法或变量肯定都是错的。试想我们的main函数就只能调用静态方法,因为main方法是静态方法
发表于 2021-11-29 10:08:04 回复(0)
就我一个C++来的吗,请不要把Java标签和C++放在一起,服了
发表于 2020-12-02 22:15:59 回复(0)
这题忽略了静态方法不能调用对象变量
发表于 2018-04-15 13:31:31 回复(0)
什么是对象变量!?
发表于 2017-07-28 00:31:29 回复(0)
静态只能调用静态
发表于 2024-11-09 16:49:27 回复(0)
静态方法中只能使用static修饰的变量,即静态变量,对象变量是指类的成员变量,即需要new出来才能调用。类的静态方法是在类编译时就会加载,而对象变量是在运行实例化之后才会使用。
发表于 2024-03-27 23:19:35 回复(0)
我new出来调用 难道不是直接调用吗 文字游戏
编辑于 2024-02-29 09:43:17 回复(0)