关于InputStream.read()方法的疑问
InputStream.read()方法为抽象方法,并没有实现,为什么在System.in中可以使用呢??
------解决方案--------------------把具体子类对象的引用转型为父类的引用类型,用父类的引用调用其方法,这就是多态。
------解决方案--------------------这是因为System中的in引用真真的对象可能是InputStream的相关子类
------解决方案--------------------in的具体类型是InputStream类的子类,它实现了read(),java调用方法时是从下往上查找的,因此会先找到有具体实现的read方法。