java中修饰符的介绍

上传人:xiao****1972 文档编号:84822216 上传时间:2019-03-05 格式:DOC 页数:21 大小:125.50KB
返回 下载 相关 举报
java中修饰符的介绍_第1页
第1页 / 共21页
java中修饰符的介绍_第2页
第2页 / 共21页
java中修饰符的介绍_第3页
第3页 / 共21页
java中修饰符的介绍_第4页
第4页 / 共21页
java中修饰符的介绍_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《java中修饰符的介绍》由会员分享,可在线阅读,更多相关《java中修饰符的介绍(21页珍藏版)》请在金锄头文库上搜索。

1、 Java中修饰符的介绍 武汉理工大学计算机学院 软件工程1002班 0121010680201 康吉金简介:Java程序在定义类时,除了使用class关键字标识之外,还可以在class之前增加若干类的修饰符来修饰限定所定义的类的特性。类的修饰符分为访问控制符和非访问控制符两大类。修饰符之间的先后排列次序对类的性质没有任何影响。1、 Java中限定访问权限的修饰符在java中,限定访问权限的修饰符主要有public 、private 、protected 和default。1、访问权限修饰符修饰成员变量和方法 公有访问控制符public: Java的类是通过包的概念来组织的,包氏类的一个松散的

2、集合。处于同一个包中的类可以不需要任何说明而方便的互相访问和引用,而对于不同包中的类,则不行。但当一个类被声明为public时,他就具有了被其他包中的类访问的可能性,只要这些其他包中的类在程序中使用import语句引入public类,就可以访问和引用这个类。类中被设定为public的方法是这个类对外的接口部分,避免了程序的其他部分直接去操作类内的数据,这实际就是数据封装思想的体现。每个Java程序的主类都必须是public类,也是基于相同的原因。用public修饰的类的域称为公共域。如果公共域属于公共类,则它能被所有的其他类所引用。public修饰符会造成安全性的数据封装性下降,所以一般应减少

3、public域的使用。此外,用pubilc修饰的成分表示是共有的,也就是说,它可以被其他任何对象访问。私有访问控制符private :用private修饰得域或方法只能被该类自身所访问和修改,而且不能被任何其他类(包括该类的子类)来获取和引用。private修饰符用来声明那些类的私有成员,它提供了最高的保护级别。此外,和它的名字“私有”一样,类中限定为private的成员只能被这个类本身访问,在类外不可见。 保护访问控制符protected : 用protected修饰的成员变量可以被三种类所引用:该类自身、与它在同一个包中的其它类、在其他包中的该类的子类。使用protected修饰符的主要作

4、用是允许其他包中该类的子类来访问父类的特定属性。此外,用该关键字修饰的成分是受保护的,只可以被同一包及其子类的实例对象访问。 eg:class A protected int weight; protected int f( int a,int b ) / 方法体 假设B与A在同一个包中,则 class B void g() A a=new A(); A.weight=100;/合法 A.f(3,4); /合法 特别说明:什么是在同一个包中? 答:用package打包在一起的class ,叫在同一个包中。(不明白,举个例子) eg:在JDK的srcjavaio中,你会看到许多java类,第一句

5、源代码都是package java.io; 没有使用package打包的,在同一目录下的类也会被视做同一个包。 default:在这种情况下中,同protected。区别在第二和第三种情况中。 eg: class A int weight ; int f( int a,int b ) / 方法体 假设B与A在同一个包中,则 class B void g() A a=new A(); A.weight=100;/合法 A.f(3,4); /合法 private: 只能在本类中访问。 eg: class Test private int money; Test() money=2000; priv

6、ate int getMoney() return money; public static void main(String args) Test te=new Test(); te.money=3000; /合法 int m=te.getMoney(); /合法 System.out.println(money=+m); PS: 实际上,把重要的数据修饰为private,然后写一个public的函数访问它,正好体现了OOP的封装特性,是OOP安全性的体现。 2、访问权限修饰符修饰类 1)不能用protected和private修饰类。 2)用default修饰的类叫友好类,在另外一个类中使

7、用友好类创建对象时,要保证它们在同一包中。3、 访问权限修饰符与继承 这里的访问修饰符指的是修饰成员变量和方法。可以分为两种情况: 1)子类与父类在同一包中 此时只有声明为private的变量与方法不能被继承(访问)。 eg: class Father private int money ; int weight=100; class Son extends Father viod f() money=10000;/ 非法 weight=100; / 合法 2)子类与父类不在同一包中 此时private与default均不能被继承(访问), protected与public可以。 eg: Fa

8、ther.java package com.aaa public class Father int height ; protected int money=120; public int weight; protected int getMoney() return money; void setMoney(int newMoney) money=newMoney; Son.java package com.bbb import com.aaa.Father; public class Son extends Father void f() money=10000; /合法 /height=170; /非法,height为default修饰的变量 System.out.println(money);/输出结果是10000 /setMoney(300); /非法 int number=getMoney();/合法 System.out.println(number);/输出结果是10000 public static void main(String args) Son sss=new Son(); sss.f(); 所以,访问权限修饰符权限从高到低排列是: public ,protected ,default, private

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号