据我了解,关键字typedef
用于为特定原始类型创建别名。
此外,通过强调Java中不同的包名称来区分具有相同类名称的两个对象。
例如
com.aic.jon.Car car = new Car();
com.aic.chupengyu.Car car = new Car();
但是,与C ++相比,它太复杂了。我们可以使用'typedef'来解决此问题,而代码要少于Java。使用Java中的关键字“ extends”,我们还可以创建扩展相同超类的不同对象,但是Java为什么不采用关键字“ typedef”?在Java中使用typedef似乎更加简单和灵活。
答案 0 :(得分:1)
除了方便起见,typedef
还提供了一种使代码跨平台的方法。 C ++中的原始类型是平台相关的。但是,大多数平台/编译器都会提供标准标头的定义,这些标头定义与平台无关的类型(例如,uint32_t
,以及与准无关的类型,例如,size_t
。不同的机器将具有不同的typedef
来完成这项工作,但是最终结果是依赖于它们的代码可以更轻松地移植。
Java已经为其所有原始类型提供了一个与平台无关的定义,因此,实际上不需要等效于typedef
的任何东西。