java - 限制方法参数值
问题描述
我目前正在学习 Java 中的注释处理。
对于源代码生成,我正在编写一个小型库。目前,我在单个枚举中拥有所有可应用于方法或字段(最终、静态、瞬态、同步 ....)的修饰符。我的生成库提供了一个方法 addModifiers(ModifierEnum... modifiers) 并且由 Field-Element 和 Method-Element 从它们的超类继承。
我想知道是否有某种方法可以限制允许传递给方法的值,具体取决于调用它的元素。
我首先想到的是覆盖每种类型中的方法或添加验证方法并在参数包含无效组合或值时抛出异常,但这只是一个运行时解决方案。编译时解决方案将非常简洁,但我怀疑它是否可能(也许还通过注释处理和每个元素中的参数的注释?)因为传递的值直到运行时才知道,除非将常量传递给方法(可以您将其限制为仅常量?)。
有任何想法吗?
解决方案
推荐阅读
- java - Spring mvc模式给出错误
- python - 嵌套列表,来自 bash 输出的 Python
- unity3d - Unity:构建 AssetBundels 需要很长时间,所以我想部分构建。有什么我能做的吗?
- amazon-web-services - Boto3 initial_auth 在使用preferred_username 作为别名时引发NotAuthorizedException 异常
- python - 登录到远程机器并运行脚本
- html - 怎么做
- oauth - 在 oauth2 中更改重定向 uri 后将访问令牌过期
- database - 您应该计算行数还是跟踪另一个表中的数字?
- python - 在线性回归中处理 NaN——scipy?
- python - 迭代 PySpark GroupedData