描述
现有一个Data类,内部定义了属性x和y,在main方法中实例化了Data类,并计算了data对象中x和y的和。但是,Data类的定义存在错误,请你将这些错误修正过来,使得main方法中的求和逻辑可以正常执行。
输入描述:
两个整数
输出描述:
两个整数的和
示例1
输入
1,2
输出:
3
代码如下:
import java.util.Scanner;
public class work2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNextInt()) {
int x = scanner.nextInt();
int y = scanner.nextInt();
Data data = new Data(x, y);
System.out.println(data.getX() + data.getY());
}
}
}
class Data {
private int x;
private int y;
private Data(int x, int y) {
x = x;
y = y;
}
private int getX() {
return x;
}
private int getY() {
return y;
}
}
上述求和方式在Data中出现了问题 在编译时出现了如下问题
对于用private修饰的成员变量无法越出Data类使用,若想在work2类中使用,则需要将构造一个能将x,y调出该类的方法且对于该方法的修饰应使用可以跨越类以上级别的修饰符。我们选择将private修饰符删除,则默认为default修饰符,它可以跨越类使用。
class Data {
private int x;
private int y;
Data(int x, int y) {
this.x = x;
this.y = y;
}
int getX() {
return x;
}
int getY() {
return y;
}
}
最后得到正确输出结果