【发布时间】:2018-06-13 11:29:14
【问题描述】:
我最近一直在阅读一本关于 Java 设计模式的书,并且遇到了从其他类继承并通过 put 实例化的类
Superclass s = new Subclass()
相对
Subclass s = new Subclass()
我最初的想法是,它更多是从设计的角度来看,并且是由于抽象或信息隐藏。但是,我仍然不确定,也无法找到明确的解释。
为什么有人会使用Superclass s = new Subclass() 进行实例化,使用Subclass s = new Subclass() 是否可以接受?
如果有人能帮助我了解这一点,我将不胜感激。
【问题讨论】:
-
格式化你的问题和代码!
-
是否可以使用
Scanner sc = new Scanner(System.in);代替Object sc = new Scanner(System.in);?是的。你为什么还要问? -
@JohannesKuhn 虽然这是可以接受的,但 OP 会问你为什么要使用这样的东西,因为它看起来很混乱。 Ben 给出的答案以及上面由 khelwood 链接的问题中的前两个答案都回答了该问题。
标签: java class object inheritance