相关疑难解决方法(0)

为什么Java缺少访问说明符?

有谁知道为什么缺少Java:

  • 一个访问说明符,允许类和所有子类访问,但不允许同一个包中的其他类访问?(保护-负)
  • 一个访问说明符,允许类访问,同一个包中的所有类,以及任何子包中的所有类?(默认加)
  • 一个访问说明符,它将子包中的类添加到当前允许受保护访问的实体中?(被保护的加)

我希望我有更多选择而不是保护和默认.特别是,我对Protected-plus选项感兴趣.

假设我想使用Builder/Factory图案类来生成一个包含许多指向其他对象的链接的对象.对象上的构造函数都是默认的,因为我想强制您使用工厂类来生成实例,以确保正确完成链接.我想将工厂分组在一个子包中,以便将它们保持在一起并与它们实例化的对象区别开来 - 这对我来说似乎是一个更清洁的包结构.

目前无法做到.我必须将构建器放在与它们构造的对象相同的包中,以便获得对默认值的访问.但分离project.area.objectsproject.area.objects.builders会这么漂亮.

那么为什么Java缺乏这些选择呢?并且,无论如何要假装吗?

java oop

2
推荐指数
2
解决办法
469
查看次数

标签 统计

java ×1

oop ×1