问答详情
源自:8-9 Java 中的 static 使用之静态方法

普通成员方法与非静态方法的区别是什么?

普通成员方法与非静态方法的区别是什么?

提问者:慕哥5975565 2018-03-29 08:20

个回答

  • TheMoonn
    2018-03-31 22:05:19
    已采纳

    普通成员方法就是非静态方法吧。

    加了static的方法:静态成员方法、静态方法、类方法;

    未加static的方法:非静态成员方法、普通成员方法;

    加了static的变量:静态变量、静态成员;

    未加static的变量:非静态变量、非静态成员;

    这是我自己总结的,参考一下。

    还有自己的问题,“成员”指的是方法或者变量,还是单独指的是变量?我自己觉得指的是方法或者变量,才延伸“成员方法”一词,图片中“成员”指的是变量。此处我觉得自己钻牛角尖了,大致知道意思即可了。有知道的回复一下。

  • 御剑忘涯
    2018-04-10 14:56:36

    同一个类中:

           非静态方法:能直接访问静态和非静态成员变量;但非静态方法只能通过创建类对象来被调用

            静态方法  :能直接访问静态成员变量,非静态的变量要通过对象来进行调用;能直接使用类名来调用静态方法,也可以用对象来进行访问

  • TheMoonn
    2018-03-31 21:42:10

    有A类和B类 两类。

    A类中:

    静态方法中,不论是变量还是方法,都只能调用静态的。若调用非静态变量和非静态方法,必须用构造方法创建对象,用对象调用。

    非静态方法中,不论是方法还是变量,不论是静态还是非静态,可以随便调用。

    B类中:

    不论是静态方法还是非静态方法,若想调用A类的静态成员变量或是静态成员方法,可以直接用A类的类名.A类的成员变量或方法去调用;若想调用A类的非静态成员变量或是非静态成员方法,必须创建A类的对象,用对象调用。


  • 慕村8525364
    2018-03-29 10:06:51

    静态方法在创建对象前就可以使用了,非静态方法必须通过new出来的对象调用。

  • qq_吾本輕狂_0
    2018-03-29 09:55:37

    静态方法在创建对象前就可以使用了,非静态方法必须通过new出来的对象调用。