• Java 修饰符 private、default、protected、public 的应用实例 (方法)


       在Java中,修饰符的作用是用来定义类、方法法或者变量的访问权限,它主要分两大类:


       访问修饰符: 限定类、属性或方法是否可以被程序里的其他部分访问和调用的修饰符。private - default - protected - public


       非访问修饰符: 用来修饰或者辅助功能,例如 static、final、abstract、synchronized等。


       外部类修饰符: public或者为default


       方法、属性修饰符:private、default、protected、public
       public - 公开对外部可见
       protected - 对包和所有子类可见
       default - 对类内部和同一包內
       private - 仅对类内部可见


       接着,将通过以下实例说明各个的用法


       创建一个 demo 的 包 和 Father 类,创建一个 test() 的方法 。( 级别为:default)
    在这里插入图片描述


       再创建一个 test 的包 和 MainTest 的 类, 当在 MainTest 里 调用 Father 类的 test() 方法时,会有报错。原因: test() 方法级别为 default,只适用于当前类和同一包內调用,当不同包调用时,违反了调用法则而导致报错。

    在这里插入图片描述


       当对 Father 类的实例化时,是没有问题的。
    在这里插入图片描述


       同理,如果把 Father 类 的 public 去掉,级别变成 default 的情况下,再次 进行 Father 类的实例化时,会有报错。


    在这里插入图片描述


    在这里插入图片描述


       在保持 default 级别情况下,解决报错的方法有两种:


       1. 把 MainTest 这个类 直接移到 demo 包里,那么它就和 Father 类在同一个包里,符合 default 调用 法则。


    在这里插入图片描述


       2. 在Father 类改回 public 级别,把 MainTest 移回 test 的包里,用 继承类的方法 extends 去继承 Father 类。


       MainTest 进行实例化后,就作为子类去继承 Father 类,调用 Father 的 test() 方法后,会出现报错。原因:default 级别情况下,当不同包的子类调用时,违反了调用法则而导致报错。


    在这里插入图片描述


       为 Father 类 test() 添加 public 或者 protected 级别,就可以正常在 MainTest 类中 调用它。


    在这里插入图片描述


    在这里插入图片描述


    在这里插入图片描述


       当 test() 方法 设为 private, 只能在当前类里调用。


       下一期将讲解这4个级别的属性应用


    在这里插入图片描述

  • 相关阅读:
    linux下常用命令
    【2023】某python语言程序设计跟学第八周内容
    glog从下载到使用实录
    CAPL中的键值对(hash)数据类型
    软件方法(下)第9章分析类图案例篇Part03
    linux性能分析(五)CPU篇(一)基础
    【课程作业经验】基于MIndSpore波士顿房价数据预测
    mysql 日期维度序列生成
    react使用内联css样式的注意点
    kubernetes 集群安装-准备篇
  • 原文地址:https://blog.csdn.net/weixin_48591974/article/details/126790364