关于Java中的访问权限

从访问权限的本质来将:其实就是调用者和提供者的关系

 

以上为Java中的访问权限

 

例如:

 

package com.atguigu.testjava;

public class Test {
    public static void main(String[] args) {
CloneTest c = new CloneTest();
//c.clone(); 这边会报错
}
}
class CloneTest{
public void test () throws CloneNotSupportedException {
new CloneTest().clone();
}
}

在此案例中,方法的调用者为package com.atguigu.testjava.Test调用(并不是由package com.atguigu.testjava.cloneTest调用)

而方法的提供者为:java.lang.Object(在Object类中clone方法的权限为protected) 

注1:clone()方法为成员方法,而成员方法和类无关,和对象有关。虽然protected访问权限为不同包中的子类也可以使用,但是这说的是类与类的关系,并不是对象和对象的关系。

package com.atguigu.testjava.Test的父类对象并不是java.lang.Object的对象,所以在此不可以使用。

注2:c.clone()的.表示的不是调用,而是表达了所属关系,表示clone()方法是c中的方法。

posted @   黑山魁七  阅读(34)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示