0

我需要知道我是否理解这一点。在这个程序中,变量“input”被创建为一个 Scanner 对象,因此可以访问 Scanner 方法。这是继承吗?其次,直到将“半径”分配为双精度数据类型并使用 nextDouble 方法,用户的实际输入才会发生。我有这个正确的吗?如果你是从 Scanner 制作对象,为什么不能直接使用 Scanner 呢?

 public class ComputeAreaWithConsoleInput {
 public static void main(String[] args) {

// Create a Scanner object

Scanner input = new Scanner(System.in);    //Scanner object called "input" created


System.out.print("Enter a number for radius: ");
double radius = input.nextDouble();        // "input" set as double datatype


double area = radius * radius * 3.14159;


System.out.println("The area for the circle of radius " +
radius + " is " + area);
   }
}
4

1 回答 1

0

在这个程序中,变量“input”被创建为一个 Scanner 对象,因此可以访问 Scanner 方法。这是继承吗?

不,这不是继承。这没有定义 的子类型Scannerinput是 的一个实例Scanner

直到将“半径”分配为双精度数据类型并使用 nextDouble 方法,用户的实际输入才会发生。我有这个正确的吗?

再次,不。这特别Scanner从标准输入读取。对流的写入和从该流中的读取是分离的,并且彼此之间完全没有关系。如果没有要读取的数据,读取流将阻塞。读取会等到用户输入内容。

如果你是从 Scanner 制作对象,为什么不能直接使用 Scanner 呢?

这是一个荒谬的问题。

于 2013-04-09T23:54:24.877 回答