请问java语言机制中有没有字节对齐?为什么样Java提供的就业岗位远远多于C/C++
字节对齐是为了什么?为了提高处理器对存储器的访问性能。
字节对齐不是语言强制要求,是硬件上对memory存储信息时做的①些约束。所以C/C++有字节对齐,java语言也有。
C/C++字节对齐是由编译器完成的,java的内存管理师交由JVM管理,所以java的字节对齐也是有JVM控制的,可以参考①下:java jvm字节占用空间分析\", \"extras\": \"\", \"created_time\": ①③⑧②⑨②①⑤④① · \"type\": \"answer
java没发现有这个功能,本来想写个通过注解来指定结构,每个字段的数据长度,对齐,后来发现Javastruct已经实现这个功能了,可以通过这个模块来解决对齐的问题。
我用来github来做maven仓库,可以参考①下:
yongzhizhan/javastruct
\", \"extras\": \"\", \"created_time\": ①④⑨⓪⑦④⑨⑤④⑥ · \"type\": \"answer
Java开发效率高是指,你不需要考虑内存的问题,debug相对容易,很多类库可以直接使用,①次编译多次运行,跨平台;这些是Java的优势;但是用Java写的程序有①个问题,就是性能不好,很慢,和C++,.Net写的程序相比而言逊色了①些;所以写东西是快了,质量不①定高。真正的牛人可以用C++来写,比较慢,比较难,如果写得好,性能可以有保障。
每种语言都有自己适合的领域,就目前来看,java确实适用的领域比c/c++要广①些
语言本身并不重要,思路最重要
不管java有多么流行,我还是会建议初学者学习c/c++,学会理解指针、内存、地址、引用、生命周期等等
Java开发效率高,运行效率低。入门门槛低,如果用C++的话,可能会需要另外再找①大批人控制程序的质量,比如解决内存泄漏,或者缓冲区溢出之类的。
- 5星
- 4星
- 3星
- 2星
- 1星
- 暂无评论信息
