static 关键字

来源:互联网 发布:人工智能产业分析 编辑:程序博客网 时间:2024/05/16 03:57
了解this之后,你就能更全面地理解“静态(static)方法”的含义。静态方法就是没有this
3
的方法。在“静态方法”的内部不能调用“非静态方法” ,反过来倒是可以的。而且你可
以在没有创建任何对象的前提下,仅仅通过类本身来调用静态方法。这实际上正是静态方法
存在的主要原因。它很象是C语言中的全局函数。Java中禁止使用全局函数,但你在类中置
入静态方法就可以访问其它静态方法和静态字段。
 
有些人认为静态方法不是“面向对象”的,因为它们的确具有全局函数的语义;使用静态方
法时,由于不存在 this,所以不是通过“向对象发送消息”的方式来完成的。的确,要是你
在代码中出现了大量的静态方法,就该重新考虑自己的设计了。然而,static 的概念有其实
用之处,许多时候都要用到它。至于它是否真的“面向对象”,就留给理论家去讨论吧。事
实上,Smalltalk 语言里的“类方法”就是与静态方法相对应的。
原创粉丝点击