导航:首页 > 编程语言 > java类的访问控制

java类的访问控制

发布时间:2024-12-05 13:45:24

java访问控制权限有哪些

java中成员的访问权限共有四种,其中三种有访问权限修饰词:public,protected,private。

  1. Public:权限最大,允许所有类访问,但其他包下的类想要访问需使用import关键字将这些public类导入包中才可使用,换句话说,import将不同包的类导入到一个包下,从而转化为包访问权限下的情况。

  2. Protected:除了提供包访问权限以外,还对扒携辩继承该类的所有派生类赋予访问隐携权限。

  3. Private:权限最小,只能由包含该成员(域和方法)的类本身访问,其他任何类都无法访问。

  4. 不使用这三个关键词时,则提供默认包访问权限,该权限春缺只允许同一个包下(即同一个目录下的Java文件)的类访问该类。

  5. 注意:private和protected只能修饰成员,无法修饰类。类要么是public的,要么是包访问权限。

Ⅱ Java的访问控制权限有哪几种试以类格式形式列出Java的访问控制。

访问权限的等级最大到最小依次是:public,protected,包访问权限(无关键字)和private。

成员的访问权限取得对某成员(属性和方法)的实现方法有下面四种情况

1, 权限设置为public; 2, 默认包访问权限,在同一包中的其他类,可以访问; 3, 权限设置为public或者protected,通过继承的子类可以访问; 4, 设置为private,提供访问器和变异器方法(get/set);

下面介绍这四种权限(相对成员而言)

1, 包访问权限,在同一包中的类可以访问; 2, Public:接口访问权限,任何类都可以访问; 3, Private:你无法访问,除了包含该成员的类,其他类都可以访问。 4, Protected:继承访问权限,包括包访问权限。在同一包中,还有就是子类可以访问。

类的访问权限类的访问

只有两种:包访问权限或public(用法同上) 如果不希望其他类拥有该类的访问权限,可以把这个来说有的构造器制定为private(比如单列模式)。

Ⅲ Java中4种不同级别的访问控制符

在Java中,存在四种访问控制级别,它们分别是private、default、protected和public。下图展示了这四种级别的访问控制,由小到大依次排列。

访问控制级别由小到大

这四种访问控制级别具体解释如下:

private(当前类访问级别):当一个类成员被private修饰时,它只能被该类的其他成员访问,其他类无法直接访问。实现类的良好封装通常采用private关键字。

default(包访问级别):如果类或类成员未使用任何访问控制符,默认为包访问级别,这意味着只能被同一包中的其他类访问。

protected(子类访问级别):如果类成员被protected修饰,那么它既可被同一包下的其他类访问,也能被不同包下的该类子类访问。

public(公共访问级别):public是访问控制中最宽松的级别,被public修饰的类或类成员可以被所有类访问,无论访问类与被访问类是否在同一包中。

下表进一步直观地展示了四种访问级别:

访问控制级别

要点:若Java源文件中定义的所有类未使用public修饰,文件名可为合法文件名;若源文件包含一个public修饰的类,文件名需与public修饰类的类名相同。

Ⅳ 什么是Java类的访问权限

在解释访问权限控制之前,先看一个场景。

在学生信息管理系统中,有两个类,分别是学生类和课程类,课程类提供了课程表和课程安排两个方法,学生类可以调用课程类提供的课程表查看课程安排,但不能调用课程安排方法,该如何处理,此时就可以利用访问权限来进行控制。

在Java中,提供了四种访问权限控制:默认访问权限(包访问权限),public,private以及protected。

默认访问权限(default):即不加任何访问修饰符,通常称为“默认访问模式“。该模式下,只允许在同一个包中进行访问。

private: 对访问权限限制的最窄的修饰符,一般称之为“私有的”。被其修饰的类、属性以及方法只能被该类的对象访问,其子类不能访问,更不能允许跨包访问。

protect: 介于public 和 private 之间的一种访问修饰符,一般称之为“保护的”。被其修饰的类、属性以及方法只能被类本身的方法及子类访问,即使子类在不同的包中也可以访问。

public: Java语言中访问限制最宽的修饰符,一般称之为“公共的”。被其修饰的类、属性以及方法不仅可以跨类访问,而且允许跨包(package)访问。下表列出了四种访问权限的控制粒度:

packagecom.cxh.test1;
classPeople{//默认访问权限(包访问权限)
privateStringname=null;
publicPeople(Stringname)
{
this.name=name;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname)
{
this.name=name;
}
}

代码可以看出,修饰People类采用的是默认访问权限,而由于People类和Main类在同一个包中,因此People类对于Main类是可见的。

阅读全文

与java类的访问控制相关的资料

热点内容
哪些地方网络信号更好些 浏览:753
jar反编辑工具 浏览:614
描述数据波动大小有哪些 浏览:584
u盘exfat可复制4g以上的文件吗 浏览:667
a4大小的文件过塑多少钱 浏览:26
畅天游2app在哪里下载 浏览:844
微信看文字的图片 浏览:298
将文件直接粘入word 浏览:134
VIP解析APP有哪些 浏览:463
怎样彻底卸载cad文件 浏览:829
iphone4港版 浏览:624
怎么用命令打开程序错误 浏览:665
iphone6怎么改控制中心 浏览:808
ns错误代码 浏览:653
iphone4s如何取消软件更新提示 浏览:538
jsp打印换行 浏览:662
哪个软件可以编程手机软件 浏览:554
如东如何学数控编程培训 浏览:5
微信h5页面怎么修改 浏览:931
手机怎么无法打开视频文件夹 浏览:840

友情链接