小编Vit*_*aly的帖子

使用注释标记数组的单独维度

在Java 8中,我们可以使用注释标记数组的单独维度(请参阅JLS 8中的第10.2节).例如,

int @a[] a;

int @a[] @b[] a;

void someMethod(int @a[] @b... y) {}
Run Code Online (Sandbox Code Playgroud)

然后我们可以用Java Reflection解析这些声明来实现一些特定的逻辑.

您是否知道此功能在实际Java框架或Java库中的任何实际应用?

java annotations jls java-8

7
推荐指数
1
解决办法
77
查看次数

使用包访问继承抽象方法

根据JLS的"8.1.1.1",我们有:

如果满足以下任一条件,则类C具有抽象方法:

•C的任何成员方法(第8.2节) - 无论是声明的还是继承的 - 都是抽象的.

•任何C的超类都有一个使用包访问声明的抽象方法,并且没有方法可以覆盖C中的抽象方法或来自C的超类

有趣的是,为什么我们在这里有第二种选择.特别是,为什么我们有完全"包访问".那么"公共"还是"受保护"的方法呢?

java inheritance abstract

5
推荐指数
1
解决办法
880
查看次数

Maven报表配置与构建配置

有趣的是,两者之间有什么区别

POM中的report-> configuration元素和build-> configuration元素。

它是用POM参考编写的:

细微的区别是,报告元素下的插件配置可以用作构建插件配置,尽管事实并非相反(构建插件配置不会影响报告插件)。

参见http://maven.apache.org/pom.html#Reporting

您能否举一个例子说明行为差异?

maven

5
推荐指数
1
解决办法
948
查看次数

UML 中的“创建”与“实例化”依赖关系

根据 UML 规范,我们可以通过<<Create>>或<<Instantiate>>构造型来表示两个类之间的依赖关系。

你知道这些刻板印象之间有什么区别吗?

它是用 UML 规范 2.5(第 22.3 章标准构造型)编写的:

  1. 为了<<Create>>

    使用依赖性表示客户端分类器创建供应商分类器的实例

  2. 为了<<Instantiate>>

    分类器之间的使用依赖性表明客户端上的操作创建供应商的实例

uml

5
推荐指数
1
解决办法
7787
查看次数

UML 中的“责任”刻板印象

根据 UML 规范,我们可以通过 << Responsibility >> 构造型来表示依赖关系(第 22.3 章标准构造型)

以下是规范中对它的定义:

一个要素与其他要素关系中的合同或义务。

您能举一个使用这种刻板印象的例子吗?

uml

5
推荐指数
1
解决办法
521
查看次数

标签 统计

java ×2

uml ×2

abstract ×1

annotations ×1

inheritance ×1

java-8 ×1

jls ×1

maven ×1