非静态的属性,方法,super this为什么不能用于静态的方法中 ?

解决方案 »

  1.   

    super this 是指父类、本类的实例,当然不能用在静态方法里了,静态方法只能调用静态变量和静态方法
      

  2.   

    this:指的是本对象,既然指的是本对象,那么它就是依赖于对象,但是static是不依赖于对象的,所以就不能在static里面使用this。
      

  3.   

    super:
    指的是父类,但是父类是一个动态的东东,你却在静态static里面调用动态的东东,所以也不能在static里面使用super
    this:
    指的是本对象,既然指的是本对象,那么它就是依赖于对象,但是static是不依赖于对象而存在的,所以就不能在static里面使用this。
      

  4.   

    本帖最后由 java2000_net 于 2008-12-29 10:01:22 编辑
      

  5.   

    静态的方法,属性属于类,被所有类的实例共享,使用的时候直接用类调用而不需要实例化
    非静态的属性,方法,super this 是属于类的实例也就是对象,使用的时候要首先将类实例化
    他们使用的时候机制不一样
    静态的方法,属性被类的实例(对象)共享,所以非静态的方法可以使用
    但非静态的属性,方法,super this不能通过类使用,所以不能用在静态方法中
    静态方法只能调用静态方法属性,非静态方法可以调用静态方法属性也可以调用非静态方法
      

  6.   

    静态方法,静态变量是不需要类的实例化就能使用的,而this,super代表的是实例对象的引用,因此,当我们使用静态方法,静态变量的时候,不能引用this ,super