引言
堆和栈是经常看到的两个名词了,以至于太平常反而没有区深入了解它们,导致一些概念区分不清楚。实际上对堆和栈的理解需要从数据结构和操作系统这两个层面来理解,因为在这两种情形下它们的含义有些差别
小楼一夜听春雨
我们知道,http协议属于明文传输协议,交互过程以及数据传输都没有进行加密,通信双方也没有进行任何认证,通信过程非常容易遭遇劫持、监听、篡改,比如我们打开一些http网站时会跳出一些不属于网站本身的弹出广告,这种情况下就是遭遇运营商的流量劫持。严重情况下,会造成恶意的流量劫持等问题,甚至造成个人隐私泄露(比如银行卡卡号和密码泄露)等严重的安全问题。
可以把http通信比喻成寄送信件一样,A给B寄信,信件在寄送过程中,会经过很多的邮递员之手,他们可以拆开信读取里面的内容(因为http是明文传输的)。A的信件里面的任何内容(包括各类账号和密码)都会被轻易窃取。除此之外,邮递员们还可以伪造或者修改信件的内容,导致B接收到的信件内容是假的。
比如常见的,在http通信过程中,“中间人”将广告链接嵌入到服务器发给用户的http报文里,导致用户界面出现很多不良链接; 或者是修改用户的请求头URL,导致用户的请求被劫持到另外一个网站,用户的请求永远到不了真正的服务器。这些都会导致用户得不到正确的服务,甚至是损失惨重。
考虑到http的这些隐患,目前像Google、Apple都在大力呼吁开发者使用全站https连接
Java中的集合在日常开发中使用非常广泛,因为它提供了一些通用的接口来管理对象。为此,整个集合框架围绕一组标准接口而设计,你可以直接使用这些接口的标准实现,诸如: LinkedList, HashSet, 和 TreeSet等,除此之外你也可以通过这些接口实现自己的集合。目前,所有的集合框架都包含以下内容:
Java程序员应该都听过HotSpot JVM,它是Sun JDK和Open JDK中所带的虚拟机,也是目前使用范围最广的虚拟机. 不过很多人不知道的是,这个目前“血统纯正”的虚拟机最初并非由Sun公司开发,而是由一家名为”Longview Technologies”的小公司设计的;甚至这个虚拟机最初并非是为Java语言开发的,它来源于Strongtalk VM,而这款虚拟机中相当多的技术又是来源于一款支持Self语言实现”达到C语言50%以上的执行效率”的目标而设计的虚拟机,Sun公司注意到了这款虚拟机在JIM编译上有许多优秀的理念和实际效果,在1997年收购了Longview Technologies公司,从而获得了HotSpot VM.
HotSpot VM继承了Sun之前的两款商用VM的优点,同时也有直接的一些优势,如它名称中的HotSpot指的是它的热点代码探测技术
早上看Youtobe视频时看到的这个广告,觉得很赞! Perfetc isn’t pretty!
What doesn’t kill you only makes you stronger!
Gillette Perfect Isn’t Pretty Rio 2016 Olympic Games Sia Unstoppable