Java面向对象编程 -4.2

声明static定义方法
这个时候对于程序而言方法就有了两种:static方法 非static方法。 这两个方法之间在调用上就有了限制:

  • static方法只允许调用static属性或static方法
  • 非static方法允许调用static属性或static方法
    所有的static定义的属性和方法都可以在没有实例化对象的前提下使用,而所有的非static定义的属性和方法必须要有实例化对象的情况下才可以使用。

static方法中不能加this. 什么叫this. this.是当前对象 而static可以在没实例化对象下访问 有this.就冲突了

但在非static方法中 static属性前可以加this. 因为static属性本来就可以通过对象访问

如果可以理解这个限制,那么对于之前的方法定义就可以得出新的结论:在我们最早讲解方法定义的时候强调过:当前定义的方法都是在主类中定义的,并且有主方法直接调用

这样调用 方法定义都带static
那如果不带static 就不行 只能通过实例化对象 才可以调用普通方法

static定义的方法和属性都不是你代码编写之初 需要考虑的,只有在回避实例化对象调用并且描述公共属性情况下才会考虑static定义方法或者属性

posted @ 2020-02-26 21:32  上杉家主-上杉绘梨衣  阅读(83)  评论(0编辑  收藏  举报