java静态方法和实例方法的区别

静态方法(方法前冠以static)和实例方法(前面未冠以static)的区别

调用静态方法或说类方法时,可以使用类名做前缀,也可以使用某一个具体的对象名;通常使用类名。
非static的方法是属于某个对象的方法,而static的方法是属于整个类的,不被任何一个对象单独拥有;
由于static方法是属于整个类的,所以它不能操纵和处理属于某个对象的成员变量,而只能处理属于整个类的成员变量,也即,static方法只能处理static域或静态方法。实例方法可以访问实例域, 静态域或静态方法, 记住都行。
声明为static的方法有以下几条限制: 1.它们仅能调用其他的static方法。
2.它们只能访问static数据。
3.它们不能以任何方式引用this或super(关键 字super与继承有关,在下一章中描述)。
static method Have No this Reference
All instance methods have a hidden parameter—this
So,
Static method can’t access instance methods and fields; it can only invoke other static class members.It can access class members only.
instance can use static method.
Instance methods:
If a method is declared without the static modifier keyword,
that method is known as an instance method. Instance methods
are associated with objects – not classes.
It can access either instance or class members.





class StaticExa {
    static int a = 4;
    static int b = 9;
    static void call() {
        System.out.println("a = " + a);//静态方法可以访问静态属性
    }
}
public class Test {
    static int c = 43;
    public static void main(String args[]) {


。。。。。。。。。。。。。。。。。。。。
详情请进:http://www.mark-to-win.com/JavaBeginner/JavaBeginner2_web.html#StaticInstanceMethodDifference
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页