首页 > 试题广场 >

下面对静态数据成员的描述中,正确的是

[单选题]
下面对静态数据成员的描述中,正确的是
  • 静态数据成员可以在类体内进行初始化
  • 静态数据成员不可以被类的对象调用
  • 静态数据成员不受private控制符的作用
  • 静态数据成员可以直接用类名调用
D选项需要考虑在A类通过类名访问B类的静态成员变量时,B类的静态成员变量必须public修饰
发表于 2021-05-10 08:40:03 回复(12)
答案应该是A,D很明显是错误的,最典型的就是单例模式。
事实上Java的设计原则是属性私有,接口公开,方法看情况,静态数据成员也不例外,枚举类型才公开,但枚举的也不能叫成员,是实例。
针对小哥的疑问,我就直接上图了。因为篇幅的原因,所以代码阅读性一般,见谅。


编辑于 2019-09-03 22:49:39 回复(8)
d要考虑访问权限啊
发表于 2019-09-03 08:12:13 回复(2)

所以,被private static修饰的属性仅仅可以被静态方法调用,但是只能被本类中的方法(可以是非静态的)调用,在外部创建这个类的对象或者直接使用这个类访问都是非法的。

发表于 2019-08-31 10:02:23 回复(3)
这个D选项有什么问题??? 静态成员可以通过类名直接访问呀 可以 表示可以有这种情况出现 有什么问题
发表于 2021-05-10 19:25:08 回复(5)
这题出错了吧 A和D都对啊
发表于 2021-05-17 18:56:36 回复(9)
想选a 却看到了d
发表于 2019-08-27 15:22:33 回复(0)
A选项:
在非静态内部类型中的字段不能声明为 static,除非用常量表达式初始化。
静态类可以在类体内初始化
发表于 2019-08-21 18:56:45 回复(0)
静态数据成员 指的是 static int a; 这类。 没有指定访问权限修饰符是public 还是 private。 如果是private 就不能被直接调用。A选项: 在非静态内部类型中的字段不能声明为 static,除非用常量表达式初始化。 静态类可以在类体内初始化
发表于 2021-11-09 15:01:26 回复(0)

A为什么不能在类里面创建静态变量。。。,类体内不是指的类里面吗???不是内部类啊!


发表于 2019-09-01 09:36:18 回复(0)
为什么不选A呢?
发表于 2019-08-26 19:23:18 回复(0)
访问数据不考虑访问权限修饰符的吗
发表于 2019-08-25 21:44:39 回复(0)
每次我答错都会怀疑是题目出错了,是我飘了吗?
发表于 2021-12-17 03:41:01 回复(1)
D 静态数据成员 指的是 static int a; 这类。 没有指定访问权限修饰符是public 还是 private。 如果是private 就不能被直接调用。
发表于 2021-11-02 19:50:38 回复(0)
在类中声明静态数据成员是以static关键字开头表明的,例如:static int a;
A: 定义静态数据成员必须在全局作用域中定义,若定义时没有初始化,则默认值为0,也可在类中进行初始化。
B:静态数据成员被类的所有对象共享,包括该类的派生类对象,基类对象和派生类对象共享基类的静态数据成员,可以调用。
C: 静态数据成员是受private控制符的作用的。
D:是正确的。
发表于 2021-09-17 11:17:40 回复(0)
在非静态内部类型中的字段不能声明为 static,除非用常量表达式初始化。非静态内部类中不能定义静态变量,因为内部类属性及方法的调用依赖于内部类对象的创建,而内部类对象的创建依赖于外部类对象;静态类的静态数据成员可以在类体内初始化
静态数据成员的访问还要看访问修饰符(此题D也应是正确的,因为D选项说的是可以,而不是肯定)
编辑于 2021-07-21 10:44:15 回复(0)
我的理解是静态数据成员可以用类名直接调用,哪怕是跨类但是跨类调用要考虑到是否访问修饰符是public
发表于 2023-06-15 17:29:16 回复(0)
A: 定义静态数据成员必须在全局作用域中定义,若定义时没有初始化,则默认值为0,也可在类中进行初始化。
B:静态数据成员被类的所有对象共享,包括该类的派生类对象,基类对象和派生类对象共享基类的静态数据成员,可以调用。
C: 静态数据成员是受private控制符的作用的。
D:选项需要考虑在A类通过类名访问B类的静态成员变量时,B类的静态成员变量必须public修饰
编辑于 2023-02-02 15:52:08 回复(0)
上当了。
d选项错误,c都已经给了提示了,静态成员也要看访问修饰符权限的哎
发表于 2022-09-21 14:01:40 回复(0)
静态数据成员可以直接用类名调用 , 这句话没有半点问题, 他没说修饰符是private, 也没说是public, 本来就有二义性, 出题者有问题,  出题思路不严谨
发表于 2022-08-21 13:24:26 回复(0)