《java核心技术卷i》第一章主要内容包括三点:

1:Java白皮书的关键术语:描述Java的十一个关键字:
2:Java applet
3 :关于Java的常见误解
 
1:第一章:Java白皮书的关键术语:描述Java的十一个关键字:
简单性,面向对象,分布式,健壮性,安全性,体系结构中立,可移植性,解释型,多线程,高性能,动态性
部分介绍如下:
简单性:Java语法相当于C++,为一个“纯净版本”,
Java去掉了C++中的头文件,指针运算(指针语法),结构,联合,操作符重载,虚基类等。
总体来说,去掉这些相对复杂的语法是利大于弊的。
 
面向对象:Java是一门纯面向对象的语言,面向对象的重点在数据(对象)及对象接口上。
在Java中,“万物皆对象”,即所有的数据都是一个对象,包括数字,字母等,所有类的基类都直接或间接继承与Object,Java 没有C++中的多继承,但可通过接口来实现多继承的需求(Java中一个类只能继承一个class,但可以实现多个接口)
 
健壮性:Java对代码进行早期安全问题检测,后期动态(运行时)检测,采用的指针模型可以消除重写内存和损坏数据的可能性
Java通过指针模型 避免了C++出现野指针等一系列指针问题.
 
安全性:Java实用于网络/分布式环境,能够构建防病毒,防篡改的系统,包括:
运行时堆栈溢出,破坏自己的进程空间之外的内存,未经授权读写文件。不可信代码在沙箱环境执行,不影响主系统
 
体系结构中立:编译器生成体系结构中立的目标文件格式,为一段编译过的代码,只要有Java运行时系统,这些代码就可以在处理器执行。
 
可移植性:Java的数据类型具有固定大小,如int类型在C++中根据32位系统位16位,64位系统中位32位,在Java中永远位32位
其原因是Java代码需要虚拟机解释成机器码,再交给操作系统执行的,
关于虚拟机的知识:立个flag,博客写出来。https://blog.csdn.net/ningjia2013/article/details/22686433
 
多线程:Java是第一个支持并发程序设计的主流语言
 
2:Java applet
在网页中运行的Java程序成为 applet 。要使用applet,需要启用Java的web浏览器执行字节码。
 
3 :关于Java的常见误解
1 Java 是html的扩展。
Java是一种程序设计语言,HTML是一种描述网页结构的方式。
2 使用xml,不需要Java。
xml是一种描述数据的方式。
3 Java 将成为适用所有平台的通用型编程语言。
理论上是可行的,实际上不同的平台有更适用的语言,如做IOS开发会用OC,Swift,浏览器的处理用JavaScript,
Windows程序通常用C++,C#,Java在服务器端编程和跨平台客户端应用较有优势
4 Java是解释型的,因此对于关键的应用程序速度太慢了。
早起的Java是解释型的,现在Java虚拟机适用即时编译器,目前Java代码的运行速度与C++相差无几
5 JavaScript是Java的简易版。
Java是一种程序设计语言,JavaScript是在网页中适用的脚本语言。

java的优点和误解 《java核心技术卷i》第一章的更多相关文章

  1. TCP/IP详解 卷1 第一章概述

    第一章概述 1.2 分层 网络编程通常分不同层次进行开发,每一层负责不同的通信功能. 一个协议族比如TCP/IP,通常是一组不同层次上多个协议的组合.一般可以认为是是四层协议系统: 链路层:有时也称作 ...

  2. 虚拟机上的Linux Java开发环境部署记录(VirtualBox+Ubuntu)第一章-基础环境搭建

    创建虚拟机时需注意三点: 在BIOS中开启Intel VT,以支持64位虚拟机系统: 对于Ubuntu 16以上版本,至少分配10G以上初始控件. 增加一块网卡,选择Host-Only网络,用于主机和 ...

  3. 【java并发编程艺术学习】(二)第一章 java并发编程的挑战

    章节介绍 主要介绍并发编程时间中可能遇到的问题,以及如何解决. 主要问题 1.上下文切换问题 时间片是cpu分配给每个线程的时间,时间片非常短. cpu通过时间片分配算法来循环执行任务,当前任务执行一 ...

  4. 徒手用Java来写个Web服务器和框架吧<第一章:NIO篇>

    因为有个不会存在大量连接的小的Web服务器需求,不至于用上重量级服务器,于是自己动手写一个服务器. 同时也提供了一个简单的Web框架.能够简单的使用了. 大体的需求包括 能够处理HTTP协议. 能够提 ...

  5. 从零开始学 Java - 搭建 Spring MVC 记录云创的日子 第一章

    2017年11月29日 来到新项目,需要用到Spring MVC ,那么我就开始记录我这次的学习. Spring MVC 框架是围绕一个 DispatcherServlet 来设计的,这个 Servl ...

  6. UNIX网络编程卷1 第一章 简介 读书笔记。

    基本没讲什么,一点点计算机网络发展史,一点点socket()简单介绍,最重要的是1.3节协议无关性. 协议无关性: 贯穿整本书的一个重要特性,他主要强调的是 socket是网络协议无关的编程接口. s ...

  7. Android深度探索-卷1第一章心得体会

     本章介绍了安卓系统移植与驱动开发的概述,安卓的系统架构有四层:1 Linux内核,2 c/c++代码库, 3 Android SDK API, 4 应用程序 在读的过程中看到了专业名词,查了查,长点 ...

  8. 徒手用Java来写个Web服务器和框架吧<第二章:Request和Response>

    徒手用Java来写个Web服务器和框架吧<第一章:NIO篇> 接上一篇,说到接受了请求,接下来就是解析请求构建Request对象,以及创建Response对象返回. 多有纰漏还请指出.省略 ...

  9. Java核心技术卷阅读随笔--第4章【对象与类】

    对 象 与 类 4.1 面向对象程序设计概述 面向对象程序设计(简称 OOP) 是当今主流的程序设计范型, 它已经取代了 20 世纪 70 年代的" 结构化" 过程化程序设计开发技 ...

随机推荐

  1. 去掉word页眉上横线的技巧

    页眉下面会出现一条横线 双击页眉进入页眉页脚编辑状态.选定页眉内容.点击菜单栏[开始]-[清除一切格式]图标. 效果图: 方法二 进入页眉编辑状态,同时自动切换到了“设计”选项卡.同时注意观察,在页眉 ...

  2. 【jQuery】(5)---jQuery CSS

    jQuery  CSS      1.jQuery 文档操作方法        1.addClass() 方法: addClass() 方法向被选元素添加一个或多个类.该方法不会移除已存在的 clas ...

  3. Nexus私服搭建

    maven私服的搭建 --> maven -->{ 1,本地仓库(从中央仓库下载保存到本地的或者自己到网上下载的jar文件包) 2,远程仓库 -->{ 1,中央仓库(maven官方j ...

  4. Apache Pulsar简介

    Apache Pulsar What is Pulsar "Pulsar is a distributed pub-sub messaging platform with a very fl ...

  5. 为什么你作为一个.NET的程序员工资那么低?

    最近看到很多抱怨贴,也许有一定的道理,但是你想过没,为什么大部分.NET程序员工资相对低?我个人是这么看的: 大批半罐子水的程序员,永远被局限在.NET的原始的小圈圈里.前端不会(你放弃了一项很重要的 ...

  6. PHP中的__call和__callStatic方法

    如何防止调用不存在的方法而出错,使用__call魔术重载方法. __call方法原型如下: mixed __call(string $name,array $arguments) 当调用一个不可访问的 ...

  7. Tomcat8源码笔记(五)组件Container分析

    Tomcat8源码笔记(四)Server和Service初始化 介绍过Tomcat中Service的初始化 最先初始化就是Container,而Container初始化过程是咋样的? 说到Contai ...

  8. MySQL高可用之组复制技术(3):配置多主模型的组复制

    MySQL组复制系列文章: MySQL组复制大纲 MySQL组复制(1):组复制技术简介 MySQL组复制(2):配置单主模型的组复制 MySQL组复制(3):配置多主模型的组复制 MySQL组复制( ...

  9. AngularJs_自定义注入对象_笔记1

    A-自定义控件示例: 我的自定义控件文件为:angular-seagull2-common.js (function (window, angular) { 'use strict'; $urlPro ...

  10. mysqldump备份(Windows)

    先说下思路,每天凌晨1点备份线上云服务器上的MySQL数据库,将备份的sql文件拷贝下来. 第一步:通过搜索引擎搜索相关可借鉴的文章.搜索关键字"Windows MySQL 备份" ...