我们从前面学习的内容中了解到,如果使用一个类则会在产生实例化对象时分别开辟栈内存及堆内存,在堆内存中要保存对象的属性。每个对象都有自己的属性,如果有些属性希望被所有的对象所共享,希望使用类名称直接来调用,那么就使用到了static关键字。
这一集我们就来探讨一下static关键字的用法。 1、使用static声明属性 使用static声明属性,即在类的属性之前加static关键字,若程序中使用static来声明属性,则此属性称为全局属性(也称静态属性或类属性),如下例子所示:
程序运行结果如下:
以上程序中将类的属性(country)使用static关键字进行声明,将其变为公共属性,该属性可以使用类名来直接调用从而修改属性的值。说明使用static声明的属性是所有对象所共享的。 2、使用static声明方法 使用static声明方法,即在方法之前加static关键字,如下所示:
程序运行结果如下:
在以上程序中,类的方法setCountry()声明的,所以可以由类名称直接调用,由static修饰的方法被称为类方法。 注意:非static声明的方法可以去调用static声明的属性或方法,而static声明的方法不能调用非static类型声明的属性或方法。 3、使用static定义内部类
此程序中使用static关键字声明内部类(Inter),使其变成了外部类,由于属性info 由static修饰,所以Inter可以直接去访问外部类的属性。 另:如果外部类的属性Info没有使用static关键字来修饰的话,则程序会出现编译错误。所以static声明的内部类不能访问非static的外部类属性。
|
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|