Java的非访问控制符

Java的非访问控制符

ID:38838763

大小:360.81 KB

页数:21页

时间:2019-06-20

Java的非访问控制符_第1页
Java的非访问控制符_第2页
Java的非访问控制符_第3页
Java的非访问控制符_第4页
Java的非访问控制符_第5页
资源描述:

《Java的非访问控制符》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、3.3Java的非访问控制符Java的非访问控制符static静态修饰符修饰属性和方法abstract抽象修饰符修饰类和方法final最终修饰符修饰类、属性和方法3.3.1静态属性、静态方法与静态初始化器static是静态修饰符。(1)静态属性被static修饰的属性不属于任何一个类的具体对象,是公共的存储单元。任何对象访问它时,取到的都是相同的数值。静态属性是类属性。当需要引用或修改一个static限定的类属性时,可以使用类名,也可以使用某一个对象名,效果相同。(2)静态方法用static修饰符修饰的方法,是

2、属于整个类的方法。例如,在PhoneCard200中如果需要修改附加费,可以定义一个静态方法setAdditory():staticvoidsetAdditory(doublenewAdd){if(newAdd>0)additoryFee=newAdd;}用static修饰的方法的含义:1)调用这个方法时应该使用类名做前缀,不用某个具体的对象名;2)该方法属于整个类,它在内存中的代码段随着类的定义而分配和装载;3)该方法不能操纵属于某个对象的成员变量,即static方法只能处理static属性。(3)静态初始化

3、器直接用static当名字、用{}包起来的一段特殊代码。与构造函数类似,完成初始化工作,但两者的区别是:静态初始化器对每个类初始化,构造函数对每个新创建的对象初始化。静态初始化器在所属的类加载入内存时由系统调用运行,构造函数则在产生新对象时由系统自动执行。静态初始化器不是方法,没有方法名、返回值和参数列表。总之,静态初始化器对整个类完成初始化操作,包括给static类成员赋初值。例TestStatic.java//测试静态属性、静态方法与静态初始化器的综合例题publicclassTestStatic{publ

4、icstaticvoidmain(Stringargs[]){PhoneCard200my200_1=newPhoneCard200(100.0);PhoneCard200my200_2=newPhoneCard200(200.5);//测试静态初始化器System.out.println("第1张200卡的卡号:"+my200_1.cardNumber);System.out.println("第1张200卡的金额:"+my200_1.balance);System.out.println("第1张200卡的

5、附加费:"+my200_1.additoryFee);System.out.println("第1张200卡的密码:"+my200_1.password);System.out.println("第2张200卡的卡号:"+my200_2.cardNumber);System.out.println("第2张200卡的金额:"+my200_2.balance);System.out.println("第2张200卡的附加费:"+my200_2.additoryFee);System.out.println("第2

6、张200卡的密码:"+my200_2.password);System.out.println("---------直接操作修改静态属性:测试静态属性");my200_1.additoryFee=0.4;//直接操作修改对象的静态属性,可以实现对类和其它同类对象同一属性的修改System.out.println("第2张200卡的附加费:"+my200_2.additoryFee);System.out.println("200卡类的附加费:"+PhoneCard200.additoryFee);System.

7、out.println("第1张200卡类的附加费:"+my200_1.additoryFee);System.out.println("------调用静态方法修改静态属性:测试静态方法");PhoneCard200.setAdditory(0.6);//调用静态方法修改类的静态属性,可以实现其所有同类对象同一属性的修改System.out.println(“修改后第1张200卡类的附加费:"+my200_1.additoryFee);System.out.println("修改后第2张200卡的附加费:"+

8、my200_2.additoryFee);System.out.println("--------测试修改密码的各种方法");my200_2.password=222;//用普通赋值法给对象的非静态属性赋值System.out.println("第2张200卡的密码:"+my200_2.password);//对该对象的非静态属性操作有效System.out.println("第1张2

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。