class B { int n; static int sum=0; void setN(int n) { this.n=n; } int getSum() { for(int i=1;i<=n;i++) sum=sum+i; return sum; } } public class A { public static void main(String args[]) { B b1=new B(),b2=new B(); b1.setN(3); b2.setN(5); int s1=b1.getSum(); int s2=b2.getSum(); System.out.println(s1+s2); } }输出结果
时间: 2024-02-02 19:03:14 浏览: 80
输出结果是 27。
首先创建了两个 B 类对象 b1 和 b2,然后分别调用它们的 setN 方法设置 n 的值。接着分别调用它们的 getSum 方法计算 1 到 n 的和,并将结果保存在静态变量 sum 中。由于 sum 是静态变量,它被所有 B 类对象所共享,所以每次调用 getSum 方法时,sum 的值都会加上当前对象的 n 值。最后在主函数中将两个对象的 getSum 方法返回值相加并输出。具体来说,b1 的 getSum 方法计算 1+2+3=6,b2 的 getSum 方法计算 1+2+3+4+5=15,所以最终输出结果为 6+15=21。
相关问题
class B { int n; static int sum=0; void setN(int n){ this.n=n; int getsum(){ for(inti=1;i<=n:i++) sum=sumti: return sum; public class A( public static void main(string[] args)( Bbl=new B(),b2=n1ew B(); b1.setN(3); b2.setN(5);int s1=b1. getSum (); int s2=b2. getSum ();System. out. println (s1+s2)}}
这段代码有很多语法错误和逻辑错误。我将对其中的错误进行修正,并给出修正后的代码:
```
class B {
int n;
static int sum = 0;
void setN(int n) {
this.n = n;
}
int getSum() {
for (int i = 1; i <= n; i++) {
sum = sum + i;
}
return sum;
}
}
public class A {
public static void main(String[] args) {
B b1 = new B();
B b2 = new B();
b1.setN(3);
b2.setN(5);
int s1 = b1.getSum();
int s2 = b2.getSum();
System.out.println(s1 + s2);
}
}
```
修正后的代码实现了一个类 B,其中有一个成员变量 n 和一个静态成员变量 sum,以及两个方法 setN 和 getSum。方法 setN 用于设置变量 n 的值,方法 getSum 用于计算从 1 到 n 的整数之和,并返回结果。
类 A 中使用类 B 创建了两个对象 b1 和 b2,并分别调用它们的 setN 和 getSum 方法计算结果。最后将两个结果相加并打印输出。
希望我的回答对你有帮助!
请写出A类中System.out.printin 的输出结果 class B { int n; static int sum=0; void setN(int n) { this.n=n; } int getSum() { for(int i=1;i<=n;i++) sum=sum+i; return sum; } } public class A public static void main(String args[]) { B b1=new B(),b2=new B(); b1.setN(3); b2.setN(5); int s1=b1.getSum(); int s2=b2.getSum(); System.out.println(s1+s2); } }
根据您提供的代码,类B具有以下方法和属性:
- 方法setN(int n):将n的值赋给B类的属性n。
- 方法getSum():根据属性n的值计算从1到n的累加和,并将结果存储在静态属性sum中,然后返回sum的值。
- 属性n:类型为整数。
类A中的main方法创建了两个B类的实例b1和b2,并通过调用setN()方法将它们的属性n设置为3和5。然后,分别调用b1.getSum()和b2.getSum()方法获取累加和,并将结果存储在s1和s2中。最后,将s1和s2相加,并使用System.out.println()方法打印输出结果。
以下是经过修正后的代码:
```java
class B {
int n;
static int sum = 0;
void setN(int n) {
this.n = n;
}
int getSum() {
for (int i = 1; i <= n; i++)
sum = sum + i;
return sum;
}
}
public class A {
public static void main(String[] args) {
B b1 = new B();
B b2 = new B();
b1.setN(3);
b2.setN(5);
int s1 = b1.getSum();
int s2 = b2.getSum();
System.out.println(s1 + s2);
}
}
```
运行以上代码将输出结果:"33"。
阅读全文