静态方法和静态变量是属于某一个类,而不属于类的对象
2011-09-11 23:29
127 查看
静态方法和静态变量是属于某一个类,而不属于类的对象。
class Point
{
int x,y;
static void output()
{
System.out.println("output() called");
}
public static void main(String[] args)
{
Point.output();
}
}
这个程序是可以编译过的;
因此
静态方法和静态变量的引用直接通过类名引用。
在静态方法中不能调用非静态的方法和引用非静态的成员变量。反之,则可以。
可以用类的对象obj去调用静态的方法method(),如:obj.method()。
虽然静态方法和非静态实例化方法在内存中都是只有1份拷贝,但是他们是不同的。
class Point
{
int x,y;
static int z;
final double PI;
Point(int a,int b)
{
PI=3.1415926;
x=a;
y=b;
}
...
}
正确的,因为会调用构造函数
class Point
{
int x,y;
static int z;
static final double PI;
Point(int a,int b)
{
PI=3.1415926;
x=a;
y=b;
}
...
}
错误的,必须
class Point
{
int x,y;
static int z;
static final double PI=3.1415926;
Point(int a,int b)
{
x=a;
y=b;
}
...
}
因为不属于对象,只属于类
class Point
{
int x,y;
static void output()
{
System.out.println("output() called");
}
public static void main(String[] args)
{
Point.output();
}
}
这个程序是可以编译过的;
因此
静态方法和静态变量的引用直接通过类名引用。
在静态方法中不能调用非静态的方法和引用非静态的成员变量。反之,则可以。
可以用类的对象obj去调用静态的方法method(),如:obj.method()。
虽然静态方法和非静态实例化方法在内存中都是只有1份拷贝,但是他们是不同的。
class Point
{
int x,y;
static int z;
final double PI;
Point(int a,int b)
{
PI=3.1415926;
x=a;
y=b;
}
...
}
正确的,因为会调用构造函数
class Point
{
int x,y;
static int z;
static final double PI;
Point(int a,int b)
{
PI=3.1415926;
x=a;
y=b;
}
...
}
错误的,必须
class Point
{
int x,y;
static int z;
static final double PI=3.1415926;
Point(int a,int b)
{
x=a;
y=b;
}
...
}
因为不属于对象,只属于类
相关文章推荐
- java中如何判定两个对象属于同一类
- vs2010 将某一个类添加到一个名字空间中 vs2010创建名字空间及其使用
- 【OC学习-15】如何判断两个对象是否属于同一个类?如何判断一个对象是否属于某一个类?
- Java面向对象【经典案例】类的属性是属于对象的,方法是动态绑定到对象的
- web开发中如何对json对象的某一属性对其进行排序
- C++ 全局对象 全局变量和局部变量 静态变量
- 类加载器--java静态方法静态变量
- List中的数据如何根据对象的某一个或多个字段排序引出Comparable和comparator的使用
- ADF:如何使用VO处理查询条件的值属于某一动态值列表的问题
- List<T>泛型集合根据对象的某一属性排序
- 根据对象的某一属性进行排序的js代码(如:name,age)
- static属于class类的,不是属于某个对象的
- list排序,根据list中存放对象的某一属性排序
- ORA-31603: 对象 "SHIHUA.VT_VAS" 属于类型 TABLE, 在方案 "SHIHUA" 中未找到
- form表单字段元素对象(四)— —为列表框增加若干选择项,并自动选择其中某一选项
- c++类的成员函数存储方式(是否属于类的对象)---一道面试题引发的思考
- 根据对象某一属性进行排序
- PHP类的静态方法和静态变量
- 对象的转型,注意instanceof是判断是否属于此类或者此类的父类
- C++静态变量对象的建立和删除,兼论MFC开始运行的起点(全局对象)