编译器与JVM争辩谁比较重要?

**

今天的话题**

今天看到了一个话题非常的有意思 我决定分享出来仅供你们参考

java虚拟机:什么?你开玩笑吧?这位大婶,我可是java啊。只有我才能让程序运行起来。你只是产生文件而已。做个文件有什么了不起的,没有我,文件没用!!**

编译器:请你放尊重点不然我要叫了。**

java虚拟机:还有,你得理不饶人,每天老是警告人。小小一点语法错误也不放水…**

编译器:对不起,没有我你能运行什么?java会设计成这样也是有原因的。如果java只是个直译语言,要一边运行一遍解释纯文字的程序,我就不相信,你能够运行的多块!**

java虚拟机:抗议啦,我又没说你一点用处都没有。但是说真的,我根本搞不懂你在做什么。程序员可以直接编写二进制代码给我运行,那你就失业了,哇哈哈哈**

编译器:我实在懒得理你。没错,虽然说只要是合格的二进制代码就可以运行,不一定要编译器编译出来的,但实际上不会有人傻成这样的,让程序员直接写二进制代码就好像要组装计算机的人自己作的出cpu一样。**

java虚拟机:你还没回答我你到底有什么用?**

编译器:java是个强类型语言 这代表编译器不能容许变量保存类型的数据,这是很关键的类型安全性功能,编译器能让很大部分的错误在到虚拟机之前就被抓到。还有…

java虚拟机:又不是全部抓光光!我还是会因为遇到将错误的数据塞进数组中而不得不抛出异常,并且…**

编译器:没礼貌别打断我说话…,是有些数据类型的错误会在运行时发生,但这也是为了容许动态绑定这样的功能。java可以在执行期引用连程序员也没有预期会碰到的类型,所有我得留一些运用性。我得工作就是得确保铁定不能跑的东西不会过关。通常我会抓得到错误,列如文字字符串以某个数字这种问题就会被我发现。**

ava虚拟机:==OK,当然。但是存取权限的安全问题呢?还不是得靠我把关,而你只不过是作这些标点符号罢了。还真谢谢你把这些问题留给我呢。

编译器:对不起,大家都知道我才是安全第一线。我刚刚说的数据类型错误如果没有处理好可是一个漏洞呢,像是违反调用private方法的程序也是由我检查的。我能够防止人们动到不可以碰的程序代码与其他类的重要数据。如果要把我的功能说完可能要说到天亮。**

java虚拟机:随你这么说。我也做的相同的事情,确保不会有人在执行前修改而进行代码。**

编译器:是啦,如果没有我挡住上诉问题,你老早就挂掉了,没时间了下回再说吧。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值