理论教育 Java面向对象程序设计:类成员访问方法

Java面向对象程序设计:类成员访问方法

时间:2023-11-25 理论教育 版权反馈
【摘要】:用protected 修饰的成员变量和方法被称为受保护的成员变量和受保护的方法。类只可以处于public 或默认访问级别,任何类不能用private和protected 来修饰。以下代码会导致编译错误:访问级别仅仅适用于类及类的成员,而不适用于局部变量。如图4.4 所示,类ClassA 和ClassB 位于同一个包中,类ClassC 和ClassD 位于另一个包中,并且ClassC 是ClassA 的子类。ClassA 是public 类型,在ClassA 中定义了4 个成员变量:num1、num2、num3 和num4;4 个成员方法:a()、b()、c()和d()。它们分别处于4 个访问级别。

Java面向对象程序设计:类成员访问方法

根据访问权限,分别产生了4 种变量和方法,具体如下:

➢ 用public 修饰的成员变量和方法称为公共变量和公共方法。

➢ 用protected 修饰的成员变量和方法被称为受保护的成员变量和受保护的方法。

➢ 不用任何修饰符的成员变量和方法被称为默认变量和默认方法。

➢ 用关键字private 修饰的成员变量和方法称为私有变量和私有方法。

成员变量、成员方法和构造方法可以处于public,protected,private 和默认这4个访问级别中的一个。类只可以处于public 或默认访问级别,任何类不能用private和protected 来修饰。以下代码会导致编译错误:

访问级别仅仅适用于类及类的成员,而不适用于局部变量。局部变量只能在方法内部被访问,不能用pubIic,protected 或private 来修饰。

如图4.4 所示,类ClassA 和ClassB 位于同一个包中,类ClassC 和ClassD 位于另一个包中,并且ClassC 是ClassA 的子类。ClassA 是public 类型,在ClassA 中定义了4 个成员变量:num1、num2、num3 和num4;4 个成员方法:a()、b()、c()和d()。它们分别处于4 个访问级别。

图4.4 ClassB,ClassC 和ClassD 访问ClassA 的成员变量和方法

在ClassA 中,可以访问自身的num1、num2、num3、num4 变量和a()、b()、c()、d()方法,代码如下:(www.daowen.com)

在ClassB 中,可以访问ClassA 中的num1、num2、num3 变量和a()、b()、c()方法,代码如下:

在ClassC 中,可以访问ClassA 中的num1、num2 变量和a()、b()方法,代码如下:

在ClassD 中,可以访问ClassA 中的num1 变量和a()方法,代码如下:

ClassB 是默认访问级别,位于mypack1 包中,只能被同一个包中的ClassA 访问,但不能被mypack2 包中的ClassC 和ClassD 访问,代码如下:

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈