2016-07-14 49 views
-4

我明白为什么我们必须创建扫描仪对象,主要是为了设置扫描仪的状态并使用它的非静态方法。我的问题是我们不能让扫描器是静态的,并使用私有静态变量设置扫描器的状态?为什么不能让扫描仪变成静态的

+7

如果您需要多台扫描仪,该怎么办? – Arkadiy

+0

嗯,这是真的我是一个初学者。只是想着为什么你不能。 –

回答

2

基于实例的值的一个主要目的是允许多个对象存在并同时跟踪不同的状态。因此,如果您有一台扫描仪同时读取来自两个不同文件或设备的输入信息,则它们需要具有各自的状态,而不会互相干扰。

还有其他更复杂的原因,例如允许扫描器实现Iterator<String>类,这是静态方法无法实现的。