zoukankan      html  css  js  c++  java
  • 26.1 包和权限修饰符

    /*
    * 权限修饰符:
    public(公共) 当前类,相同包下不同的类,不同包下的
    protected(受保护) 当前类,相同包下不同的类,不同包下的子类
    default(默认) 当前类,相同包下不同的类
    private(私有) 当前类

    default:当前包下使用
    protected:让子类对象使用
    */

    public class PermissionsDemo {
        public void publicMethod() {
            System.out.println("publicMethod");
        }
    
        void defaultMethod() {
            System.out.println("defaultMethod");
        }
    
        private void privateMethod() {
            System.out.println("privateMethod");
        }
    
        protected void protectedMethod() {
            System.out.println("protectedMethod");
        }
    
        public static void main(String[] args) {
            PermissionsDemo p = new PermissionsDemo();
            p.publicMethod();
            p.protectedMethod();
            p.defaultMethod();
            p.privateMethod();
        }
    }

    输出

    2.不同类私有方法报错

    3.不同包除了public都报错,使用继承父类后子类可以使用受保护的方法,如下PermissionsDemo2案例

    package day26_package包.权限测试2;
    
    import day26_package包.权限测试.PermissionsDemo;
    
    public class PermissionsDemo2 extends PermissionsDemo {
        public void fun() {
            super.publicMethod();
            super.protectedMethod();
        }
        
        public static void main(String[] args) {
            PermissionsDemo2 p = new PermissionsDemo2();
            p.fun();
        }
    }

    输出

  • 相关阅读:
    Visual Studio 中的 .NET Framework 类库
    泛型
    泛型
    事件
    基于事件的异步模式
    使用委托进行异步编程
    使用 IAsyncResult 调用异步方法
    异步编程设计模式
    演练:使用VS2010 C# 创作简单的多线程组件
    [转][MEF插件式开发] 一个简单的例子
  • 原文地址:https://www.cnblogs.com/longesang/p/11239810.html
Copyright © 2011-2022 走看看