本人是计算机专业的学生,这学期刚开始接触Java,老师布置的的作业中有一道题是:修饰词native、volatile、transient、synchronized的运用(题目就是这样布置的)。希望各位大神能用通俗易懂的方法帮助我掌握这些关键字,最好能有简单易理解的测试程序。小女子不胜感激。详细内容:http://user.qzone.qq.com/936002518/blog/1413277298
4 回答
吃鸡游戏
TA贡献1829条经验 获得超7个赞
native
表示定义的是一个java语言和非java语言交互的java基础方法,要知道java是高级语言,底层和操作系统交互的部分,也就是jvm,都是由和操作系统交互更为直接的c或者c++来实现的,这个东西在实际的java运用中极少使用,除非你需要使用java语言和操作系统交互(比如win32的api)
volatile
一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份
transient
这个东西要和java的序列化一起来说,在java对象序列化的时候如果某些对象里面的字段不需要序列化,就定义为transient
synchronized
这个东西要和多线程一起来说了,定义问synchronized表示这个东西只能被一个线程访问
你们老师太无聊了,刚开始学java居然要求理解这些东西,我都是搞了好几年开发才慢慢理解到这些东西的
添加回答
举报
0/150
提交
取消