所有fx构建器都被弃用了......除了.adapter中的一堆?

kle*_*tra 7 java builder javafx-8

从来没有喜欢过构建者(并且很少使用它们),所以不要过于不满意在jdk8中弃用它们决定 - 但是有一个软件包它们不被弃用,实际上是实例化其产品的唯一方法:javaBean属性的适配器 - bug或功能?

问题:

  • 它们会在最终版本中被弃用吗?
  • 如果没有,是否有任何理由可以安全使用,那就是不破坏二进制兼容性?

Oli*_*low 3

适配器构建器是独立的与“场景图对象”构建器它们不会子类化 NodeBuilder(与场景相关的所有其他对象构建器的父级)。整个问题的出现是因为 OpenJFX 团队决定使用泛型为 Node 的所有子类实现构建器(以节省字节代码大小和工作量),而不是采用扁平方法(这种方法编码起来很乏味,难以维护,而且占用空间很大)。字节码大小)。

适配器的构建器是“扁平的”构建器,这意味着构建器没有父级。这是很自然和简单的,因为您只拥有大约每种“原始”属性类型的构建器,以及一个用于对象属性的构建器,该构建器在每次反射时读取 getter 和 setter。

这意味着适配器构建器不存在问题,它们不会破坏二进制兼容性。至于为什么它们仅通过构建器公开以及它们是否会被弃用,这超出了我的范围。