4、给出下列代码,如何使成员变量m被方法fun直接访问?() class Test{ private int m; public static void fun() { //... } } A、将private int m改为protected int m B、将private int m改为public int m C、将private int m改为static int m D、将private int m改为int m 5、已知有下列类的说明,则下列哪个语句是正确的? class Test{ private float f = 1.0f; int m = 12; static int n=1; public static void main(String[] args) { Test t = new Test(); } } A、t.f; B、this.n; C、Test.m; D、Test.f 6、在java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为() A、隐藏 B、覆盖 C、重载 D、java不支持此特性
时间: 2024-04-17 09:28:30 浏览: 118
4、要使成员变量 `m` 能够被方法 `fun` 直接访问,应该将私有修饰符 `private` 改为公有修饰符 `public`。因此,选项 B(将 `private int m` 改为 `public int m`)是正确的。
5、根据代码中的类说明,选项 A(`t.f`)是正确的。由于 `f` 是一个私有成员变量,只能在类的内部直接访问。在 `main` 方法中,我们创建了一个 `Test` 对象 `t`,所以可以通过 `t.f` 来访问私有成员变量 `f`。
6、这种面向对象程序特性称为重载(overloading)。重载允许在同一个类中定义多个同名方法,这些方法的形式参数的个数、类型或顺序可以不同,甚至传回的值也可以不同。重载使得我们可以根据不同的参数来调用同一方法名的不同实现,提高了代码的灵活性和可读性。因此,选项 C(重载)是正确的。
相关问题
给出如下代码,如何使成员变量m被方法fun()直接访问( ) class Test { private int m; public static void fun() { } }
要使成员变量m被方法fun()直接访问,可以将方法fun()声明为静态方法,并将成员变量m声明为静态变量,如下所示:
```
class Test {
private static int m;
public static void fun() {
m = 10;
System.out.println("m = " + m);
}
}
```
这样,方法fun()就可以直接访问成员变量m了。注意,如果将成员变量m声明为非静态变量,则方法fun()不能直接访问它,需要通过对象来访问。
给出下列代码,如何使成员变量m 被方法fun()直接访问_________。 class Test { private int m; public static void fun() { ... } }
可以将成员变量m改为public,或者提供一个public的getter方法来访问m。例如:
class Test {
public int m;
public static void fun() {
// 可以直接访问m
System.out.println(m);
}
}
或者
class Test {
private int m;
public int getM() {
return m;
}
public static void fun() {
Test t = new Test();
// 可以通过getter方法访问m
System.out.println(t.getM());
}
}
阅读全文