`
longgangbai
  • 浏览: 7326053 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

由Java反射中修饰符判断到一个简单系统的权限的设计

阅读更多

       在项目中到处使用反射的时代,看到一个想到Java修饰符的类package java.lang.reflect.Modifier,在此类中定义类类的修饰方法常量:

 

    public static final int PUBLIC           = 0x00000001;


    public static final int PRIVATE          = 0x00000002;

        public static final int PROTECTED        = 0x00000004;


    public static final int STATIC           = 0x00000008;

      public static final int FINAL            = 0x00000010;

        public static final int SYNCHRONIZED     = 0x00000020;

        public static final int VOLATILE         = 0x00000040;

      public static final int TRANSIENT        = 0x00000080;

       public static final int NATIVE           = 0x00000100;

        public static final int INTERFACE        = 0x00000200;

        public static final int ABSTRACT         = 0x00000400;

       public static final int STRICT           = 0x00000800;

        static final int BRIDGE    = 0x00000040;
    static final int VARARGS   = 0x00000080;
    static final int SYNTHETIC = 0x00001000;
    static final int ANNOTATION= 0x00002000;
    static final int ENUM      = 0x00004000;

在Java中类的关键子不过这几个,但是组合起来就不是这么多了,但是在类中

 public static boolean isAbstract(int mod) {
 return (mod & ABSTRACT) != 0;
    }

凭借着这样的简单方法实现是否是不是被修饰:

 

这让我想起了一般的在资源相对就少的时项目中权限:

我们类比将Java修饰符和权限类比一下:

 Java修饰符类                                                             权限系统

 

每一个Java关键字                                                      一个项目中操作

java中Class,Method,Property 对象(简称JP)         一个用户组

一个JP (可以由多个Java关键字)                                 一个角色(由多个操作)

一个Java类可以多个属性                                             一个权限系统(多个权限集合)

 

当判断 一个JP是否被一个java对象字修饰,相当判断一个角色是否由某一种权限操作。

                       

这样可以实现一个简单的权限系统!!

 

 

分享到:
评论

相关推荐

    java反射&权限控制.pdf

    Java反射是Java语言提供的一种强大的动态编程特性,它允许程序在运行时检查并操作类、接口、对象等的内部信息。这一概念最早由Smith在1982年提出,核心思想是程序能够自省,即在运行时可以访问、检测和修改自身的...

    Java基础知识复习02:从修饰符到反射注解.pdf

    在Java编程语言中,修饰符、参数传递、内部类和接口是构建面向对象程序的基本概念。以下是对所提供文档内容中涉及知识点的详细讲解: ### 1. 四种权限修饰符 Java提供了四种访问修饰符来控制类、变量、方法和构造器...

    java反射机制PPT

    1. `Class`类:每个类在内存中都有一个对应的Class实例,它包含了关于类的所有信息,如类名、修饰符、超类、接口、构造器、字段和方法等。可以通过`Class.forName()`或对象的`getClass()`方法获取到Class对象。 2. ...

    java反射原理详解

    Java反射机制是Java语言的一种强大的特性,它允许程序在运行时动态地获取类的信息并操作类的对象。在Java中,反射主要涉及到`java.lang.Class`类、`java.lang.reflect`包中的类(如Constructor、Method、Field)以及...

    java反射机制原理和反射机制总结

    Java反射机制是Java编程语言中的一个强大特性,它允许程序在运行时检查和操作类、接口、字段以及方法等对象。这一机制的核心在于`java.lang.Class`类和相关的API,它们提供了对类元数据的访问,使得我们能够在运行时...

    java反射机制详解

    - `java.lang.reflect.Modifier`: 提供用于解码和编码访问权限修饰符的静态方法。 - `java.lang.reflect.Proxy`: 用于创建动态代理类和实例的工具类。 具体示例如下: 1. **通过一个对象获得完整的包名和类名**: ...

    Java高级程序设计实战教程第三章-Java反射机制.pptx

    Java反射机制是Java编程语言中的一个强大工具,它允许程序在运行时检查和操作类、对象、字段和方法。在本教程中,我们将深入探讨Java反射机制的核心概念、功能、API以及应用场景。 **3.1 应用场景** 反射机制在...

    Java反射访问私有变量和私有方法.doc

    优点:这种方法非常简单易行,直接修改访问权限修饰符可以快速访问非公有成员变量或方法。 缺点:这种方法可能会破坏程序的封装性,对于多数对代码安全性要求严格的系统此方法并不可取。 方法二:利用安全管理器 --...

    Java反射原理_SSH框架最底层技术

    Java反射机制是Java编程语言中的一个重要特性,它允许程序在运行时动态地获取类的信息并调用其方法。在SSH(Struts、Spring、Hibernate)框架中,反射被广泛用于实现灵活的控制逻辑和数据绑定。理解Java反射原理对于...

    利用java反射技术实现动态搜索所有字段

    Java反射技术是Java编程语言中的一个强大工具,它允许程序在运行时检查并操作类、接口、对象等的内部信息,包括但不限于类名、方法名、参数类型以及字段。通过反射,开发者可以实现动态调用方法、访问私有成员、创建...

    Java中的访问控制

    在编程领域,特别是Java语言中,访问控制是面向对象编程的一个关键特性,它涉及到类、接口、方法和变量的可访问性。访问控制是封装的一部分,封装是面向对象编程的三大基本特征之一,另外两个是继承和多态。封装的...

    java反射机制.pdf

    通过反射,程序可以在运行时获取任意一个已知名称的类的内部信息,包括其修饰符、父类、接口实现,以及字段和方法的详细信息,并能够在运行时改变字段内容或调用方法。这一特性让Java程序能够动态地加载和使用编译...

    经典java反射和动态代理代码

    1. **获取类信息**:通过`Class.forName()`方法,我们可以获取到任何已加载类的`Class`对象,从而得到类名、包名、修饰符等信息。 2. **创建对象**:使用`Class.newInstance()`或`Constructor.newInstance()`可以...

    基于java的访问权限控制源代码.zip

    在Java编程语言中,访问权限控制是面向对象编程的一个核心概念,它确保了代码的安全性和封装性。这个压缩包“基于java的访问权限控制源代码.zip”很可能包含了一系列示例,用于演示如何在Java中实现不同级别的访问...

    JAVA反射机制原理及代码

    Java反射机制是Java语言的一个重要特性,它允许程序在运行时获取关于任何已知类的内部信息,包括类的修饰符、超类、实现的接口,以及字段和方法的所有细节。通过反射,我们可以动态地创建对象、访问私有成员、调用...

    java反射机制

    Java反射机制是Java编程语言中的一个重要特性,它允许程序在运行时检查类的内部结构,创建和访问类的对象,以及动态调用方法和修改字段。这一特性使得Java具备了一定的动态性,虽然通常被认为是一种静态类型语言。...

    基于Java的源码-访问权限控制源代码.zip

    在Java编程语言中,访问权限控制是至关重要的一个概念,它确保了代码的封装性和安全性。这个"基于Java的源码-访问权限控制源代码.zip"文件很可能包含了一些示例,用于演示Java中的访问修饰符如何工作以及如何实现...

    Java反射机制

    Java反射机制是Java编程语言中的一个重要特性,它赋予了程序在运行时检查和操作类、接口、字段和方法的能力。这种动态类型的行为使得Java在某种程度上具有了类似于Perl、Python和Ruby等动态语言的特性,虽然它本身是...

Global site tag (gtag.js) - Google Analytics