在项目中到处使用反射的时代,看到一个想到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反射还支持原始类型(如int、char等)的操作。通过反射可以获取原始类型的...
Java反射是Java语言提供的一种强大的动态编程特性,它允许程序在运行时检查并操作类、接口、对象等的内部信息。这一概念最早由Smith在1982年提出,核心思想是程序能够自省,即在运行时可以访问、检测和修改自身的...
在Java编程语言中,修饰符、参数传递、内部类和接口是构建面向对象程序的基本概念。以下是对所提供文档内容中涉及知识点的详细讲解: ### 1. 四种权限修饰符 Java提供了四种访问修饰符来控制类、变量、方法和构造器...
1. `Class`类:每个类在内存中都有一个对应的Class实例,它包含了关于类的所有信息,如类名、修饰符、超类、接口、构造器、字段和方法等。可以通过`Class.forName()`或对象的`getClass()`方法获取到Class对象。 2. ...
Java反射机制是Java语言的一种强大的特性,它允许程序在运行时动态地获取类的信息并操作类的对象。在Java中,反射主要涉及到`java.lang.Class`类、`java.lang.reflect`包中的类(如Constructor、Method、Field)以及...
Java反射机制是Java编程语言中的一个强大特性,它允许程序在运行时检查和操作类、接口、字段以及方法等对象。这一机制的核心在于`java.lang.Class`类和相关的API,它们提供了对类元数据的访问,使得我们能够在运行时...
- `java.lang.reflect.Modifier`: 提供用于解码和编码访问权限修饰符的静态方法。 - `java.lang.reflect.Proxy`: 用于创建动态代理类和实例的工具类。 具体示例如下: 1. **通过一个对象获得完整的包名和类名**: ...
Java反射机制是Java编程语言中的一个强大工具,它允许程序在运行时检查和操作类、对象、字段和方法。在本教程中,我们将深入探讨Java反射机制的核心概念、功能、API以及应用场景。 **3.1 应用场景** 反射机制在...
优点:这种方法非常简单易行,直接修改访问权限修饰符可以快速访问非公有成员变量或方法。 缺点:这种方法可能会破坏程序的封装性,对于多数对代码安全性要求严格的系统此方法并不可取。 方法二:利用安全管理器 --...
Java反射机制是Java编程语言中的一个重要特性,它允许程序在运行时动态地获取类的信息并调用其方法。在SSH(Struts、Spring、Hibernate)框架中,反射被广泛用于实现灵活的控制逻辑和数据绑定。理解Java反射原理对于...
Java反射技术是Java编程语言中的一个强大工具,它允许程序在运行时检查并操作类、接口、对象等的内部信息,包括但不限于类名、方法名、参数类型以及字段。通过反射,开发者可以实现动态调用方法、访问私有成员、创建...
在编程领域,特别是Java语言中,访问控制是面向对象编程的一个关键特性,它涉及到类、接口、方法和变量的可访问性。访问控制是封装的一部分,封装是面向对象编程的三大基本特征之一,另外两个是继承和多态。封装的...
通过反射,程序可以在运行时获取任意一个已知名称的类的内部信息,包括其修饰符、父类、接口实现,以及字段和方法的详细信息,并能够在运行时改变字段内容或调用方法。这一特性让Java程序能够动态地加载和使用编译...
1. **获取类信息**:通过`Class.forName()`方法,我们可以获取到任何已加载类的`Class`对象,从而得到类名、包名、修饰符等信息。 2. **创建对象**:使用`Class.newInstance()`或`Constructor.newInstance()`可以...
在Java编程语言中,访问权限控制是面向对象编程的一个核心概念,它确保了代码的安全性和封装性。这个压缩包“基于java的访问权限控制源代码.zip”很可能包含了一系列示例,用于演示如何在Java中实现不同级别的访问...
Java反射机制是Java语言的一个重要特性,它允许程序在运行时获取关于任何已知类的内部信息,包括类的修饰符、超类、实现的接口,以及字段和方法的所有细节。通过反射,我们可以动态地创建对象、访问私有成员、调用...
Java反射机制是Java编程语言中的一个重要特性,它允许程序在运行时检查类的内部结构,创建和访问类的对象,以及动态调用方法和修改字段。这一特性使得Java具备了一定的动态性,虽然通常被认为是一种静态类型语言。...
在Java编程语言中,访问权限控制是至关重要的一个概念,它确保了代码的封装性和安全性。这个"基于Java的源码-访问权限控制源代码.zip"文件很可能包含了一些示例,用于演示Java中的访问修饰符如何工作以及如何实现...
Java反射机制是Java编程语言中的一个重要特性,它赋予了程序在运行时检查和操作类、接口、字段和方法的能力。这种动态类型的行为使得Java在某种程度上具有了类似于Perl、Python和Ruby等动态语言的特性,虽然它本身是...