`
RednaxelaFX
  • 浏览: 3053501 次
  • 性别: Icon_minigender_1
  • 来自: 海外
社区版块
存档分类
最新评论

关于Java程序的执行的一次分享

    博客分类:
  • Java
阅读更多
上周六参加程序员圆桌会议第二期--关于JVM的那些事的活动,做了一次“简略”的分享……
对里面的每个知识点来说都确实是相当简略,但我太贪心了,想一口气把相关的内容多说一些,结果没控制住时间,不小心连着废话了4个小时……

期待以后能听到校长毕玄本来要在这次活动做的分享~

Anyway,那4个小时的内容有现场录像,毕玄老大已经将视频上传,并在他的博客放出,地址是:杭州程序员圆桌交流第二期视频
现在视频文件的有效链接是:
Part I
Part II
Part III
Part IV
Part V
Part VI
(国内的同学打不开的话请自备梯子喔)
现场的讲解过程中有些口误的状况,主要原因当然是我水平有限。各位同学如果发现错误的话请积极反馈哦~

仍在不断演化中的那演示稿可以在这里的附件下载到。没有JavaEye帐号的同学可以从115网盘下载:http://u.115.com/file/t03916e70a
其中有几张GIF图在转成PDF后就变静态了,可以到我这边的原帖去看相应的图。


演示稿中有很多地方还是空白的……觉得有些概念还是画个图来比较容易解释,但画出能清晰解释概念的图也挺烧时间的,所以很抱歉,只能把现在“as-is”的稿发出来了。
真正有意思的我觉得不是我写的字,是演示稿里嵌的链接;可以把这个演示稿看成资料堆的粘合剂之类的 >_<

另外这演示稿与其说是为做presentation用还不如说是资料的一顿乱堆……以后要是再有机会做presentation的话得从里面抽出确定的主题出来精简下才行 T T

===============================================================

这次分享的主题是Java程序的执行。以Sun JDK的实现为例,从Java语言的源码开始,通过源码级编译器(javac)编译为Class文件,再由底下的JVM来执行;其中JVM在概念上是怎样的,HotSpot VM是一个怎样的JVM,为“执行程序”提供了怎样的运行时支持,解释器与JIT编译器各自又是怎样的。内容可能有点分散、冗长、在某些点过于钻到细节里。请各位有耐心阅读演示稿的同学在遇到觉得不清晰、或是觉得有错误的地方时不啬指点一下,让我们能共同学习进步 ^_^

更新:
新版本请在另一帖的附件里下载:Java虚拟机分享演示稿2010-12-28版
  • 大小: 49.9 KB
分享到:
评论
33 楼 RednaxelaFX 2011-12-10  
ydpiaoyun 写道
gif图片是怎么做的啊

我是用FireWorks做多帧PNG然后导出为GIF的。每帧都是人肉做的嗯,方法很土鳖 =_=
32 楼 ydpiaoyun 2011-12-09  
gif图片是怎么做的啊
31 楼 dollordoll 2011-08-27  
谢谢分享 学习了
30 楼 0704681032 2011-01-06  
很好的资料,就是水平不够,到后来就听不懂了...
29 楼 arcko 2011-01-04  
杭州西湖好风光
28 楼 dplead 2010-11-28  
RednaxelaFX好厉害,我这阵子也在学习这方面相关的知识,谢谢共享
27 楼 kingsvinus 2010-08-24  
请问
杭州程序员圆桌交流第三期:GC Tuning Case
的视频在哪里下载呀?
u115网盘不能下了。谢谢了。
26 楼 copy 2010-06-30  
看了一下挺好的
本人菜鸟
虽然有的东西没听过
但大体不影响
25 楼 lurker0 2010-06-23  
PDF内容好多啊   再展开一下都可以写书了
24 楼 RednaxelaFX 2010-06-02  
ZangXT 写道
先谢谢博主提供这么有价值的分析、学习资料。
pdf文件中好像有些图片显示不出来。

如果是有些页只有标题下面没东西的话,那些是原本就还没写完的地方……也就是TODO/FIXME
有兴趣的话我可以发原始PPTX给你 ^_^ 可惜最近都没怎么添加内容进去。
23 楼 ZangXT 2010-06-02  
先谢谢博主提供这么有价值的分析、学习资料。
pdf文件中好像有些图片显示不出来。
22 楼 lgdlgd 2010-05-31  
sesame 写道
经老大要求,看那长长的4个小时视频,化了我整整1下午时间。前面100页PPT还听的懂,能理解,感觉有用;后面100页感觉和java程序的工作实在是没有联系,看不下去。大家觉得如何?


同感,后面都没有看了,不知道在前面提到的一个可以嵌入“注解解释器”还是什么来着,后面的视频有没有提到怎么嵌入,这个还估计还能玩一玩。。。
21 楼 RednaxelaFX 2010-05-30  
sesame 写道
经老大要求,看那长长的4个小时视频,化了我整整1下午时间。前面100页PPT还听的懂,能理解,感觉有用;后面100页感觉和java程序的工作实在是没有联系,看不下去。大家觉得如何?

呃,那么夸张……抱歉哈,确实不是所有内容都“实用”的。本来应该跳着看的,挑自己感兴趣的看了就OK。
对主要写Java应用的程序员来说,JVM本身就是个良好的抽象层,本意就是屏蔽过多早“噪音”,让程序员能安心的实现业务逻辑。换句话说那底下是怎么实现的,本身并不是一般工作上会需要特别关注的地方。

大概……我只是想出点力气,把实现方式总结出来,去对冲掉一些对JVM“实现”方面的误解吧,例如说“局部变量在循环内定义比在循环外定义多耗内存”之类的。本来这种内容就已经穿过JVM的抽象层而试图向更接近底层的方向去探,所以如果停留在JVM抽象层以上来分析的话就会有问题。
我是觉得这种本来就不需要Java程序员去关心的部分,跟工作没关系的话不去碰就是最好了,不然留下错误的印象反而不好。

经常被老大说我在错误的地方花费了过多精力。我承认也同意在现在的工作上是这样的。所以说那视频……原本兴趣不大的话,全部看完确实是比较浪费时间的,而且很多问题也没说清楚。抱歉了哈 <(_ _)>
20 楼 sesame 2010-05-29  
经老大要求,看那长长的4个小时视频,化了我整整1下午时间。前面100页PPT还听的懂,能理解,感觉有用;后面100页感觉和java程序的工作实在是没有联系,看不下去。大家觉得如何?
19 楼 ssooss 2010-05-10  
各位都是大大,咱实在是看不懂
18 楼 wujiazhao88 2010-05-05  
从毕玄的博客上看到的,特意过来看,果然是好分享啊。谢啦兄弟!
17 楼 landslide 2010-05-04  
感谢分享~
16 楼 xiaolongfeixiang 2010-05-04  
非常感谢你们的无私奉献!!
15 楼 lbfhappy 2010-05-04  
<p>如果视频下载不了的,可以到如下地址下载,我已经上传到我的QQ中转站去了。<br>不知道QQ中转站可以被下载多少次,如果下载不了的,可以发email给我(hadeslee#vip.qq.com),我再发给你们。<br>感谢楼主对知识的无私奉献。<br><br>1,<span style="font-family: 'lucida Grande', Verdana; color: #8396b7; line-height: 19px;">(提取码 ca938849)</span><br><a href="http://mail.qq.com/cgi-bin/ftnExs_download?k=2a613933329b9fcb754d4a321e380616010709550a0f010a4e510e000a15005b5754145209080c1405505856000f570f5a020805382c3474513409030b0f05143a0e4c674d5a5117050d4f337f&amp;t=exs_ftn_download&amp;code=ca938849" target="_blank">http://mail.qq.com/cgi-bin/ftnExs_download?k=2a613933329b9fcb754d4a321e380616010709550a0f010a4e510e000a15005b5754145209080c1405505856000f570f5a020805382c3474513409030b0f05143a0e4c674d5a5117050d4f337f&amp;t=exs_ftn_download&amp;code=ca938849</a><br><br>2,<span style="font-family: 'lucida Grande', Verdana; color: #8396b7; line-height: 19px;">(提取码 6e0e947f)</span><br><a href="http://mail.qq.com/cgi-bin/ftnExs_download?k=7f65306595079b94204943641f3405490e560355585601571b01565c0819035501571d5c0e56024b5206535d0b5254045003005d3920372b043000550a03054b6f0a45314c565248500946657e&amp;t=exs_ftn_download&amp;code=6e0e947f" target="_blank">http://mail.qq.com/cgi-bin/ftnExs_download?k=7f65306595079b94204943641f3405490e560355585601571b01565c0819035501571d5c0e56024b5206535d0b5254045003005d3920372b043000550a03054b6f0a45314c565248500946657e&amp;t=exs_ftn_download&amp;code=6e0e947f<br></a><br>3,<span style="font-family: 'lucida Grande', Verdana; color: #8396b7; line-height: 19px;">(提取码 6a83e9d8)</span><br><a href="http://mail.qq.com/cgi-bin/ftnExs_download?k=7f613833c968d5ca204d4b324339561753580156520f53081b030d00511450010403150a5209521552020e005258010106575b56652d647504340803560e57156f0e4d67105b0116500d4e3322&amp;t=exs_ftn_download&amp;code=6a83e9d8" target="_blank">http://mail.qq.com/cgi-bin/ftnExs_download?k=7f613833c968d5ca204d4b324339561753580156520f53081b030d00511450010403150a5209521552020e005258010106575b56652d647504340803560e57156f0e4d67105b0116500d4e3322&amp;t=exs_ftn_download&amp;code=6a83e9d8</a><br><br>4,<span style="font-family: 'lucida Grande', Verdana; color: #8396b7; line-height: 19px;">(提取码 8ac6dc78)</span><br><a href="http://mail.qq.com/cgi-bin/ftnExs_download?k=7161633687f09cca2e4d1037426305170b0305555454065915520706024e030e5e034e0e075506150e5902075d54525d0f565a57647737750a34530657540315610e1662110152165e0d153623&amp;t=exs_ftn_download&amp;code=8ac6dc78" target="_blank">http://mail.qq.com/cgi-bin/ftnExs_download?k=7161633687f09cca2e4d1037426305170b0305555454065915520706024e030e5e034e0e075506150e5902075d54525d0f565a57647737750a34530657540315610e1662110152165e0d153623&amp;t=exs_ftn_download&amp;code=8ac6dc78<br></a><br>5,<span style="font-family: 'lucida Grande', Verdana; color: #8396b7; line-height: 19px;">(提取码 04bfb1fe)</span><br><a href="http://mail.qq.com/cgi-bin/ftnExs_download?k=79346266bc05b691261811674431544a010d54575a0154541d030103511c520403504f5e5b0853485556560350075f5306555051622566280261525651065348695b17321753034b5658146625&amp;t=exs_ftn_download&amp;code=04bfb1fe" target="_blank">http://mail.qq.com/cgi-bin/ftnExs_download?k=79346266bc05b691261811674431544a010d54575a0154541d030103511c520403504f5e5b0853485556560350075f5306555051622566280261525651065348695b17321753034b5658146625&amp;t=exs_ftn_download&amp;code=04bfb1fe<br></a><br>6,<span style="font-family: 'lucida Grande', Verdana; color: #8396b7; line-height: 19px;">(提取码 c9c0d124)</span><br><a href="http://mail.qq.com/cgi-bin/ftnExs_download?k=2a3963306828cdcb751510314231001b520e5101025402014e5f0709051c0607010c4e095d030619515c005507030055560b500164253279516c5300570604193a5616641153571a0555153023&amp;t=exs_ftn_download&amp;code=c9c0d124" target="_blank">http://mail.qq.com/cgi-bin/ftnExs_download?k=2a3963306828cdcb751510314231001b520e5101025402014e5f0709051c0607010c4e095d030619515c005507030055560b500164253279516c5300570604193a5616641153571a0555153023&amp;t=exs_ftn_download&amp;code=c9c0d124</a></p>
<p> </p>
14 楼 dargoner 2010-05-03  
PDF我看的一楞一楞的,太牛逼了

相关推荐

    JAVA小程序设计

    它以其“一次编写,到处运行”的特性而闻名,因为Java应用程序可以在任何支持Java虚拟机(JVM)的平台上运行。在本主题中,我们将深入探讨Java小程序设计的基本概念和技术。 1. **Java基础**: Java的基础包括语法、...

    JAVA程序设计教程 第二版 高清版 完整版

    1. Java编程语言:作为一门面向对象的编程语言,Java的特性包括跨平台运行(一次编写,到处运行)、自动垃圾回收机制、丰富的API支持、安全性较高以及多线程处理能力。 2. 编程基础:对于初学者而言,了解变量、...

    java初级程序设计(和各位分享)

    它的设计目标是“一次编写,到处运行”,这得益于其跨平台的Java虚拟机(JVM)。 2. **基础语法**:学习Java首先要掌握基础语法,包括变量、数据类型(如整型、浮点型、字符型、布尔型以及引用类型)、运算符、流程...

    Java程序设计+PPTjavalearnsa资料分享

    这份"Java程序设计+PPTjavalearnsa资料分享"集合了关于Java学习的重要资源,旨在帮助初学者和进阶者提升Java编程能力。资料包含PPT教程,可能涵盖了从基础语法到高级特性的全面讲解。 1. **Java基础知识**:Java是...

    java编写的扫雷小程序

    开发者用Java编写扫雷程序,这意味着游戏可以在任何安装了Java运行环境的计算机上运行,体现了Java“一次编写,到处运行”的特性。 【描述】:“j2se编写的扫雷,有.exe文件和源文件,方法和源代码易看懂,愿意与...

    毕业设计(java程序2005new).rar_java 毕业设计_java毕业设计_java程序_毕业设计_程序设计

    1. **Java**:Java是一种广泛使用的高级编程语言,以其“一次编写,到处运行”的特性而闻名,适用于各种平台,包括Web、移动应用和企业级应用。 2. **毕业设计**:这是高等教育中的一项重要任务,要求学生综合运用所...

    功能比较完善的JAVA截图程序

    它的“一次编写,到处运行”理念使得Java程序可以在任何支持Java的平台上运行,这为开发截图程序提供了广泛的适用性。 **2. Swing库** Swing是Java GUI的主要工具包,包含了一系列组件,如按钮、文本框、面板等,...

    java源程序

    Java以其“一次编写,到处运行”的跨平台特性,深受开发者喜爱。本文将深入探讨Java源程序的相关知识点,以及如何利用编辑器进行高效开发。 首先,我们要明白Java源程序是由Java编程语言编写的文本文件,其扩展名...

    一个java编的P2P程序

    标题中的“一个Java编的P2P程序”指的是使用Java编程语言开发的点对点(Peer-to-Peer,简称P2P)网络应用程序。P2P技术允许网络上的多个节点直接互相连接,共享资源,而不需要通过中心服务器。这种模式在文件共享、...

    JAVA开发的打字软件源程序javalearnsa资料分享

    Java是一种跨平台的面向对象的编程语言,它的强项在于其“一次编写,到处运行”的特性,这使得Java成为开发桌面应用、网络应用、移动应用等的理想选择。 【描述】提到的"JAVA开发的打字软件源程序javalearnsa资料...

    编写高效优雅Java程序.pdf

    在本文档《编写高效优雅Java程序.pdf》中,作者分享了在Java编程学习中收集到的一些实用知识点和最佳实践。内容涵盖了面向对象编程、代码设计、异常处理以及性能优化等多个方面。以下是对文档中重点知识点的详细介绍...

    WI TWO 淘宝分享[Java程序设计入门教程].(.杜邦杰).(扫描版

    它的设计目标是“一次编写,到处运行”,这得益于Java虚拟机(JVM)的存在,使得Java程序可以在任何支持JVM的设备上运行。 2. **环境搭建**:学习Java的第一步通常是安装Java Development Kit (JDK),它是开发和...

    Java课件分享.ppt

    对于初学者,建议从安装和搭建Java开发环境开始,逐步掌握编写、编译和运行Java程序的步骤,然后深入学习类、对象、继承、多线程等概念,最后探索图形界面、网络编程和I/O操作,以全面提高Java编程技能。

    用Java写的一个QQ聊天程序

    Java是一种广泛使用的、面向对象的编程语言,以其跨平台性和“一次编写,到处运行”的特性而闻名。在本项目中,开发者使用Java来创建了一个能够模拟QQ聊天功能的应用,这涉及到网络编程、多线程、GUI设计等多个领域...

    java 数码照片管理程序

    首先,Java作为一种跨平台的编程语言,具有“一次编写,到处运行”的特性,这使得开发的数码照片管理程序能够兼容多种操作系统,如Windows、Mac OS和Linux等。开发者通常会利用JavaFX或Swing库来构建用户界面,这两...

    JAVA核心知识点整理_分享.pdf

    JVM是Java程序的执行引擎,它负责将编译后的字节码转换为特定平台的机器指令。JVM的设计目标是实现跨平台的“一次编写,到处运行”。 #### 线程 线程是Java中的并发执行单元。Java提供了多线程支持,允许程序同时...

    蜘蛛牌的java程序

    Java是一种广泛使用的面向对象的编程语言,以其“一次编写,到处运行”的特性而闻名。它具有丰富的类库和强大的跨平台能力,适合开发各种类型的应用,包括桌面应用、移动应用以及服务器端应用。 【压缩包子文件的...

    钉钉企业内部小程序DEMO - Java.zip

    跨平台兼容:开发者一次开发,即可在多种终端设备上运行,免除了复杂的适配工作,大大提高了开发效率。 社交属性强:小程序可以无缝嵌入微信生态,支持分享至聊天窗口、朋友圈等社交场景,有利于用户间的传播和...

    33.031.JAVA基础教程_Java语言概述-第一个Java程序:HelloWorld(33).rar

    Java语言是目前世界上最流行的编程语言之一,以其“一次编写,到处运行”的跨平台特性而闻名。这个"33.031.JAVA基础教程_Java语言概述-第一个Java程序:HelloWorld(33).rar"文件是针对初学者的一个基础教程,旨在...

    钉钉企业内部应用-小程序-QuickStart JAVA版.zip

    跨平台兼容:开发者一次开发,即可在多种终端设备上运行,免除了复杂的适配工作,大大提高了开发效率。 社交属性强:小程序可以无缝嵌入微信生态,支持分享至聊天窗口、朋友圈等社交场景,有利于用户间的传播和...

Global site tag (gtag.js) - Google Analytics