当前位置:首页 > 未来畅想 > 正文内容

java基础之——访问修饰符(private/default/protected/public)

admin3周前 (05-30)未来畅想15

java基础之——访问修饰符(private/default/protected/public)

1. 访问修饰符介绍

Java编程语言中的访问控制符共有四种类型:私有(private)、默认(无特定关键字)、受保护(protected)和公共(public)。这些修饰符分别代表着不同的访问权限和可见性规则。

元素的访问权限,从严格到宽松依次排列为private、default、protected以及public。对于类A与类B,若它们的访问修饰符均为public,当类A中的某个方法试图调用类B中的另一个方法时java基础之——访问修饰符(private/default/protected/public),可以通过以下图表来判定其访问是否可行。

java基础之——访问修饰符(private/default/protected/public) 第1张

如下举例说明四种修饰符对元素的访问限制:

1.1. private

在类B中尝试访问同包内类A的私有方法protected java,会导致编译阶段出现错误提示。

package p1
class A {
    private String getName(){
        return "jim";
    }
    public void display(){
在当前类中,通过System.out.println()方法输出对象的名称;对于本类中的私有方法,同类访问是被允许的。
    }
}
package p1
class B{
    public void display(){
        A a = new A();
在编译过程中,尝试调用类A中定义的私有方法时,系统输出提示信息:输出a对象所拥有的名称。
    }
}

单例模式中,private关键字被广泛运用,它使得构造函数只能被类内部访问;通过将构造函数设置为private,确保了外部无法直接实例化该类。

public class Singleton {
    /**
将构造函数设定为私有属性,从而阻止外部类在调用时直接利用构造函数来创建对象实例。
     */
    private Singleton() {
    }
    /**
     * 单例必须通过该方法获取
     */
公开静态方法获取Singleton实例,{
返回实例包装器中的实例。
    }
    
定义了一个私有的静态内部类,名为InstanceWrapper。
Singleton类中的静态常量INSTANCE,其值被赋予了一个新创建的Singleton实例。
    }
}

1.2. default

在类C中尝试调用位于不同包中的类A的默认方法时,编译过程中会出现错误提示。

package p1
public class A {
    String getName(){
        return "jim";
    }
}
package p1
public class B{
    public void display(){
        A a = new A();
在当前包内调用默认方法,输出对象a的名称是允许的。
    }
}
package p2
public class C {
    public void display(){
        A a = new A();
在执行System.out.println(a.getName())这一操作时,由于试图调用类A中的默认方法,编译过程中出现了错误。
    }
}

1.3. protected

在类C中尝试调用类A的受保护方法时,编译器将显示错误信息。

package p1
public class A {
    protected String getName(){
        return "jim";
    }
}
package p2
public class B extends A {
    public void display(){
输出父类中受保护的函数调用结果,这是被允许的。
    }
}
package p2
public class C {
    public void display(){
        A a = new A();
在编译过程中,尝试执行System.out.println(a.getName())时,由于试图调用类A中受保护的成员方法,程序将出现错误提示。
    }
}

1.4. public

无访问限制。

package p1
public class A {
    public String getName(){
        return "jim";
    }
}
package p2
public class B {
    public void display(){
        A a = new A();
在无任何访问限制的情况下,能够直接调用并输出变量a所关联对象的名称。
    }
}

当子类对父类的方法进行隐藏或覆盖时,需要遵守访问修饰符的相关规定。

若子类中的函数对父类中的函数进行了隐藏或覆盖,那么子类函数的访问权限标识符应当与父类相应函数的访问权限标识符保持一致,甚至更为宽松。这一原则是面向对象编程的核心protected java,意味着子类应当被视为对父类的一种扩展和优化,从而赋予子类更高的可访问性。以下是一个具体的例子:

/**
 * 父类
 */
class Father {
    /**
     * 静态方法
     */
确保静态方法不受保护,定义一个静态函数。
    }
    /**
     * 非静态方法
     */
    public void method() {
    }
}
/**
 * 子类
 */
class Son extends Father {
    /**
尝试将父类中方法的访问权限修饰符从protected调整为更具限制性的默认访问级别,然而在编译过程中出现了错误提示。
     */
    static void staticMethod() {
    }
    /**
在尝试将方法的访问修饰符从父类的公开(public)级别调整为更具限制性的保护(protected)级别时,编译器出现了错误提示。
     */
    protected void method() {
    }
}

3. 元素支持的访问修饰符

每个组成部分java基础之——访问修饰符(private/default/protected/public),比如类别、接口、注释、构造函数、成员变量以及成员方法等,都明确或暗示地标注了访问权限的修饰符,然而protected java,并非所有这些组成部分都能使用所有四种访问权限修饰符。

加入微信交流群:************ ,请猛戳这里→点击入群

扫描二维码推送至手机访问。

版权声明:本文由前沿科技娱乐汇发布,如需转载请注明出处。

本文链接:https://www.kejiyl.com/post/3477.html

分享给朋友:

“java基础之——访问修饰符(private/default/protected/public)” 的相关文章

脑机接口娱乐:打破传统游戏玩法的桎梏

脑机接口娱乐:打破传统游戏玩法的桎梏

在科技飞速发展的时代,娱乐领域也迎来了前所未有的变革。脑机接口技术,作为一项极具前瞻性的创新,正逐渐打破传统游戏玩法的桎梏,为玩家们带来全新的沉浸式体验。传统游戏玩法往往依赖于手眼协调、按键操作等方式,虽然也能给玩家带来一定的乐趣,但在某种程度上已经有些“过时”。而脑机接口娱乐则开启了一扇全新的大门...

脑机接口娱乐个性化体验定制的实现路径

脑机接口娱乐个性化体验定制的实现路径

在当今科技飞速发展的时代,脑机接口技术正逐渐成为娱乐领域的一颗新星,为人们带来前所未有的个性化体验。脑机接口娱乐个性化体验定制的实现路径,是将人类的思维与电子设备紧密结合,让每一位用户都能在娱乐世界中拥有独一无二的感受。数据采集是实现脑机接口娱乐个性化体验定制的基础。通过高精度的脑电传感器,准确地记...

太空旅游娱乐医疗保障措施的全面解读

太空旅游娱乐医疗保障措施的全面解读

随着科技的不断进步,太空旅游逐渐从梦想走向现实。太空环境的特殊性给旅游、娱乐活动以及医疗保障带来了诸多挑战。本文将对太空旅游娱乐医疗保障措施进行全面解读,让我们一同深入了解这一充满神秘与挑战的领域。太空旅游娱乐方面的保障措施太空旅游的核心在于为游客提供独特的娱乐体验。在航天器的设计与制造上,注重舒适...

脑机接口娱乐开拓老年娱乐市场的前景

脑机接口娱乐开拓老年娱乐市场的前景

在当今科技飞速发展的时代,脑机接口技术正逐渐成为人们关注的焦点。这一前沿技术不仅在医疗、康复等领域展现出巨大的潜力,还为开拓老年娱乐市场带来了前所未有的机遇。随着人口老龄化的加剧,老年人群体的娱乐需求日益增长。传统的娱乐方式往往受到身体机能下降、活动受限等因素的制约,难以满足老年人多样化的娱乐需求。...

脑机接口娱乐法律规范的重要性探讨

脑机接口娱乐法律规范的重要性探讨

在科技飞速发展的当今时代,脑机接口技术逐渐崭露头角,为人们带来了前所未有的娱乐体验。伴随着这一新兴技术的兴起,与之相关的法律规范问题也日益凸显,其重要性不容忽视。脑机接口娱乐,顾名思义,是指通过脑机接口技术实现的各种娱乐活动。它突破了传统娱乐方式的局限,让人们能够以更为直接和自然的方式与虚拟世界互动...

脑机接口娱乐在教育游戏开发的实践

脑机接口娱乐在教育游戏开发的实践

在当今科技飞速发展的时代,脑机接口技术作为一项极具潜力的创新领域,正逐渐走进人们的生活,并在教育游戏开发中展现出了独特的实践价值。脑机接口是一种能够直接与大脑进行交互的技术,它可以通过读取大脑的电信号、脑磁信号等生物特征,将大脑的意图转化为计算机可识别的指令,从而实现人与机器的无缝连接。在教育游戏开...