JAVA中类中的实例方法可以操作类变量(static变量)吗?类方法(static方法)可以操作实例变量吗?

来源:百度知道 编辑:UC知道 时间:2024/06/21 05:18:48

实例方法可以操作类变量(static变量),也叫类的静态变量。
static方法不能操作实例变量。

原因很简单,实例变量(或实例方法)是要有类的实例才能访问的,即先要new一个对象,才能访问。
而static方法或变量,不需要创建对象,直接通过类名访问,所以它不能访问实例变量。

实例方法可以操作类变量
类方法(static方法)不可以操作实例变量

静态方法

通常,在一个类中定义一个方法为static,那就是说,无需本类的对象即可调用此方法。如下所示:

class Simple{
static void go(){
System.out.println("Go...");
}
}
public class Cal{
public static void main(String[] args){
Simple.go();
}
}

调用一个静态方法就是“类名.方法名”,静态方法的使用很简单如上所示。一般来说,静态方法常常为应用程序中的其它类提供一些实用工具所用,在Java的类库中大量的静态方法正是出于此目的而定义的。

静态变量

静态变量与静态方法类似。所有此类实例共享此静态变量,也就是说在类装载时,只分配一块存储空间,所有此类的对象都可以操控此块存储空间,当然对于final则另当别论了。看下面这段代码:

class Value{
static int c=0;
static void inc(){
c++;
}
}
class Count{
public static void prt(String s){
System.out.println(s);
}
public static void main(String[] args){
Value v1,v2;
v1=new