为了账号安全,请及时绑定邮箱和手机立即绑定

C ++中的typedef关键字是否具有Java等效项或方法论?

C ++中的typedef关键字是否具有Java等效项或方法论?

Qyouu 2019-10-19 15:08:29
来自C和C ++背景,我发现明智地使用typedef会带来极大帮助。您是否知道在Java中实现类似功能的方法,无论是Java机制,模式还是您使用的其他有效方法?
查看完整描述

3 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

Java具有原始类型,对象和数组,仅此而已。没有typedef。


查看完整回答
反对 回复 2019-10-19
?
POPMUISE

TA贡献1765条经验 获得超5个赞

如果这是您的意思,则可以简单地扩展您要键入的类,例如:


public class MyMap extends HashMap<String, String> {}


查看完整回答
反对 回复 2019-10-19
?
烙印99

TA贡献1829条经验 获得超13个赞

正如其他人之前提到的那样,

Java中没有typedef机制。

我也一般不支持“伪类”,但是这里应该没有一般的严格经验法则:

例如,如果您的代码反复使用“基于泛型的类型”,例如:


Map<String, List<Integer>> 

您绝对应该考虑为此目的创建一个子类。

可以考虑的另一种方法是,例如,在您的代码中进行如下减速:


//@Alias Map<String, List<Integer>>  NameToNumbers;

然后在您的代码NameToNumbers中使用,并执行一个预编译任务(ANT / Gradle / Maven)来处理和生成相关的Java代码。

我知道,对于这个答案的某些读者来说,这听起来可能有些奇怪,但这就是在JDK 5之前有多少个框架实现了“注释”,这就是lombok在做什么以及其他框架。


查看完整回答
反对 回复 2019-10-19
  • 3 回答
  • 0 关注
  • 777 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信