Row*_*wan -5 java methods modifiers
我只是在这里检查我的推理,因为我认为我已经知道了答案.有人问我:无论我有多少个特定类的实例,给定的方法肯定会在每个对象中都有相同的操作.那么为什么Java开发人员为方法发明了静态修饰符呢?我们可以将它与静态变量进行对比.当然,这里每个对象对于给定字段可以具有不同的值.
我的回答是,不,给定的方法在每个类的实例中都不会有相同的操作.例如,setter和getter在类的每个实例中以"相同"的方式操作,但它们的输出确实取决于类的实例.
相当广泛的问题; 但是这里有各种简单的事实:因为静态被认为是关于"好的OO"原则的异常:
换句话说:默认情况下,您努力不使用静态.有些情况下有意义; 但你必须仔细考虑那些.
或者,给我个人两分钱:如果静态是"更好的答案",每个人仍然会在Pascal中编码,并声称命令式编程是软件工程的银弹.
但要回答"其他"问题:"为什么我们需要静态呢?"
仅仅因为它有时候方便有用.当你转向java"系统类"; 如集合或对象,你会发现合理数量的"有用"功能.这样就可以维护软件质量的其他重要属性; 喜欢:单一责任原则.例如,有一个中央实施是有道理的sort()
; 而不是直接对集合上的"附加""可以排序"行为.
归档时间: |
|
查看次数: |
151 次 |
最近记录: |