【0】README

0.1) 本文转自 core java volume 1,仅供了解,所谓爱屋及乌嘛;
0.2) java的设计者编写了颇有影响力的白皮书,用来解释设计的初衷以及完成的情况,并发布了一个摘要;


【1】该摘要归纳为11个关键术语

1.1)简单性;
1.2)面向对象: java 与 C++ 的主要不同点在于多继承;
1.3)网络技能(Network-Savvy): java有一个扩展的例程库,用于处理像HTTP 和 FTP 之类的TCP/IP 协议;
1.4)健壮性: java 和 C++ 最大的不同在于 java采用的指针模型可以消除重写内存和损坏数据的可能性;这个特性非常有用, 它使得 java 编译器能够检测许多在其他语言中仅在运行时刻才能够检测出来的问题;java是绝对安全的, 其原因是永远不会存取一个坏的指 针,造成内存分配错误,也不必防范内存泄露;
1.5)安全性: java 适用于网络/分布式环境,使用 java 可以构建防病毒、防篡改的系统;
一开始, java就设计成 能够防范各种攻击, 其中包括:

  • 1.5.1)运行时堆栈溢出; 如,蠕虫等病毒常用的攻击手段;
  • 1.5.2)在自己的处理空间之外破坏内存;
  • 1.5.3)未经授权读写文件;

Attention): 自java1.1 以来,java就有了 数字签名类 的概念,通过数字签名类,可以确定类的作者;如果信任这个类的作者,这类就 可以在你的机器上拥有更多的权限;
1.6)体系结构中立: java编译器通过生成与特定的计算机体系结构无关的 字节码指令来实现这一特性;(编译器生成一个体系结构中立的 目标文件格式,这是一种编译过的代码,只要有 java 运行时系统, 就可以在许多处理器上运行)
即时编译: 虚拟机有一个选项,可以将使用最频繁的 字节码序列 翻译成 机器码,这个过程被称为 即时翻译
1.7)可移植性: 在java 中, 数据类型具有固定的大小, 这消除了代码移植时令人头痛的问题, 二进制数据以固定的格式进行存储和传输,消除了字节顺序的困扰, 而字符串采用的是 标准的 Unicode 格式存储的(例如, java中的int 永远为32位整数, 而在C/C++中,int 可能是16位整数、32位整数,也可以是编译器提供商指定的其他大小);
1.8)解释性: java 解释器可以在任何移植了解释器的机器上执行 java 字节码;(现在,使用 即时编译器 将字节码 翻译成 机器码)
1.9)高性能: 在运行时, 字节码可以快速地翻译成运行这个应用程序的特定CPU 的机器码;
1.10)多线程:多线程可以带来更好的交互响应和实时行为;(多线程编译的简单性 是 java 成为颇具魅力的服务器段开发语言的主要原因之一)
1.11)动态性: java 能够适应不断发展的环境,库中可以自由地添加新方法和实例变量, 而对客户端没有影响;

java 白皮书的关键术语的更多相关文章

  1. 1.2 Java“白皮书”的关键术语

        Java的设计者已经编写了颇有影响力的“白皮书”,来解释设计的初衷以及完成的情况,并且发布了一个简短的摘要.这个摘要用下面11个关键术语进行组织: 简单性 面向对象 分布式 健壮性 安全性 体 ...

  2. Java白皮书的关键术语

    “白皮书”可以在http://www.oracle.com/technetwork/java/langenv-140151.html上找到. 1.简单性. 2.面向对象. 3.网络技能(Network ...

  3. Java核心技术(Java白皮书)卷Ⅰ 第一章 Java程序设计概述

    第1章 Java程序设计概述1.1 Java程序设计平台 具有令人赏心悦目的语法和易于理解的语言,与其他许多优秀语言一样,Java满足这些要求. 可移植性 垃圾收集 提供大型的库  如果想要有奇特的绘 ...

  4. Expo大作战(四)--快速用expo构建一个app,expo中的关键术语

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...

  5. Java 并发,相关术语

    Java 并发,相关术语: 术语 作用 synchronize 可修饰方法.代码块.类:介绍:https://www.cnblogs.com/zyxiaohuihui/p/9096882.html L ...

  6. Core Java 学习笔记——1.术语/环境配置/Eclipse汉化字体快捷键/API文档

    今天起开始学习Java,学习用书为Core Java.之前有过C的经验.准备把自己学习这一本书时的各种想法,不易理解的,重要的都记录下来.希望以后回顾起来能温故知新吧.也希望自己能够坚持把自己学习这本 ...

  7. Java白皮书学习笔记+Head First Java--用于自我复习 基础知识篇

    本笔记是摘与Hava白皮书上面的内容,用来给自己做提醒的,因此大概并不适合Java的学习者作为笔记参考使用. 以我的水平现在还看不懂这个... 一.基础知识篇 1.常量 final关键字指示常量,只能 ...

  8. 有关java中static关键的重写问题

    <Java编程思想>中这样提到“只有普通的方法调用可以是多态的”.说白了,就是静态方法不能实现重写这种多态. JAVA静态方法形式上可以重写(只要子类不加@Override关键字修饰的话, ...

  9. 一步步实现滑动验证码,Java图片处理关键代码

    最近滑动验证码在很多网站逐步流行起来,一方面对用户体验来说,比较新颖,操作简单,另一方面相对图形验证码来说,安全性并没有很大的降低.当然到目前为止,没有绝对的安全验证,只是不断增加攻击者的绕过成本. ...

随机推荐

  1. LeetCode OJ-- Container With Most Water

    https://oj.leetcode.com/problems/container-with-most-water/ 不同高度的柱子排一列,两个柱子可以组成一个容器,求最大容积. 最直观的方法就是暴 ...

  2. AC日记——传染病控制 洛谷 P1041

    传染病控制 思路: 题目想问的是: 有一棵树: 对于除1外每个深度可以剪掉一棵子树: 问最后剩下多少节点: 题目意思一简单,这个题立马就变水了: 搜索就能ac: 数据有为链的情况,按深度为层次搜索的话 ...

  3. 如何证明一个数的数根(digital root)就是它对9的余数?

    数根就是不断地求这个数的各位数之和,直到求到个位数为止.所以数根一定和该数模9同余,但是数根又是大于零小于10的,所以数根模9的余数就是它本身,也就是说该数模9之后余数就是数根. 证明: 假设有一个n ...

  4. Java中final和static关键字总结

    1.final: final关键字可用于类.方法.变量前. final修饰的类不可被继承,例如java.lang.Math就是一个 final类,不可被继承. final修饰变量,在显示初始化后不可改 ...

  5. Windows Server 2008 IE 无法调整安全级别

    开始”/“程序”/“管理工具”/“服务器管理器”命令,在弹出的服务器管理器窗口中,找到“安全信息”设置项,单击其中的“配置IE ESC”选项,打开如下图所示的IE增强安全配置窗口.

  6. Learn How To Create Trigger In Oracle Forms

    I have written many posts related to triggers in Oracle Forms, I have given examples for Form Level ...

  7. linux yum 安装软件

    概括了部分常用的yum命令包括: 自动搜索最快镜像插件:yum install yum-fastestmirror安装yum图形窗口插件:yum install yumex 1 安装yum insta ...

  8. Flak快速上手

    本文介绍如何上手 Flask . 这里假定你已经安装好了 Flask ,否则请先阅读< 安装>. 如果已安装好Flask,通过以下命令查看 一个简单的例子: from flask impo ...

  9. 选择一个 Python Web 框架:Django vs Flask vs Pyramid

    Pyramid, Django, 和 Flask都是优秀的框架,为项目选择其中的哪一个都是伤脑筋的事.我们将会用三种框架实现相同功能的应用来更容易的对比三者.也可以直接跳到框架实战(Framework ...

  10. c语言单链表实现

    /************************************************************************* > File Name: singleLin ...