java学习笔记之——访问权限控制

本文详细介绍了Java中的访问权限控制,包括成员访问权限和类的访问权限。成员访问权限包括Public、Friendly(默认)、Protected和Private,而类的访问权限则只有默认(包访问权限)和Public。内容还涉及了不同访问权限的访问范围,以及访问权限如何影响包内、包外、子类的访问。此外,文章通过示例代码展示了各种访问权限的实战应用。
摘要由CSDN通过智能技术生成


成员的访问权限

首先先声明一下friendly默认访问权限,就是在类的成员变量或者成员方法在没有被public,private,protected修饰时就是默认访问权限。(唉,说到这里就想起来java期末考试时老师让建一个“友好型”的方法,我在声明方法的时候想不出friendly怎么拼写,最后那里空了一格没写,现在回想起来真是被机智的自己感动哭了。)

另外,需要注意一下局部变量不能用修饰符修饰,它们只能在方法内使用。

以下是几个访问权限控制修饰词的访问范围:

本类访问    包内访问   包外子类访问   包外非子类访问

Public           Y                Y                   Y                      Y

Friendly        Y                Y                   N                     N

Protected      Y               Y                   Y                      N

Private           Y               N                  N                     N

Public 修饰的变量和方法是没有限制包内外都可以访问。

Friendly (就这样写好了,它是默认的,但我总得叫它点儿什么)修饰的变量和方法是有包访问权限,本包可以访问,外包不可访。

Protected 修饰的变量和方法也是有包访问权限,它与friendly的

区别是,它所在类的包外子类可以继承和访问protected 修饰的变量和方法。

Private 除了包含该成员的类其他任何类都无法访问该成员。

类的访问权限

类的访问权限仅有两个选择:包访问权限(默认)和public。如果不希望对该类拥有访问权限,可以把所有的构造器都指定为private,从而阻止任何人创建该类的对象,但是在该类的static成员内部可以创建。

验证代码如下所示:

包内测试:

package cn.zjnu.edu.java2425;
class Soup1{
private Soup1(){System.out.println("用static方法创建Soup1对象并返回引用");}
public sta
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值