《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. [原创]K8 Cscan 3.6大型内网渗透自定义扫描器

    前言:无论内网还是外网渗透信息收集都是非常关键,信息收集越多越准确渗透的成功率就越高但成功率还受到漏洞影响,漏洞受时效性影响,对于大型内网扫描速度直接影响着成功率漏洞时效性1-2天,扫描内网或外网需1 ...

  2. System.net.mail.smtpException;服务器提交了协议冲突 服务器响应为:

    最近发邮件遇到问题. 主机godaddy 端口 25,80 都可以用 stmp服务器地址:smtpout.secureserver.net 不支持ssl 我就吧 EnableSsl 设置为false了 ...

  3. AutoCloseable的用法

    今天学习JDBC的时候查看了接口Statement的executeQuery()方法的时候偶然发现了一个新的接口: 看到红笔圈出的那句话当时没反应过来,才知道是接口的多继承,但是后面的那个接口并没有见 ...

  4. linux定时任务执行没结果,手动执行有结果问题总结

    今天写了个脚本手动执行有结果,但是放到系统定时任务跑却没结果,之前也遇到这种问题解决了没记录后面又懵逼了一次~~~ 如下图: 手动执行有结果 放到定时任务中每五分钟执行一次 解决方法: 脚本中加载系统 ...

  5. mysql 开发进阶篇系列 53 权限与安全(账号管理的各种权限操作 上)

    一. 概述 在了解前两篇的权限系统介绍后,这篇继续讲账号的管理,这些管理包括账号的创建,权限更改,账号删除等.用户连接数据库的第一步都是从账号创建开始. 1.  创建账号 有两种方法可以用来授权账号: ...

  6. Chapter 4 Invitations——1

    In my dream it was very dark, and what dim light there was seemed to be radiating from Edward's skin ...

  7. 举个栗子看如何做MySQL 内核深度优化

    本文由云+社区发表 作者介绍:简怀兵,腾讯云数据库高级工程师,负责腾讯云CDB内核及基础设施建设:先后供职于Thomson Reuters和YY等公司,PTimeDB作者,曾获一项发明专利:从事MyS ...

  8. Mybatis源码解析-MapperRegistry代理注册mapper接口

    知识储备 SqlsessionFactory-mybatis持久层操作数据的前提,具体的解析是通过SqlSessionFactoryBean生成的,可见>>>Spring mybat ...

  9. go使用rpc

    RPC是远程过程调用的缩写(Remote Procedure Call),通俗地说就是调用远处的一个函数,是分布式系统中不同节点间流行的通信方式.Go语言的标准库提供了一个简单的RPC实现 serve ...

  10. python 时间模块time,datetime

    模块(module)是 Python 中非常重要的东西,你可以把它理解为 Python 的扩展工具.换言之,Python 默认情况下提供了一些可用的东西,但是这些默认情况下提供的还远远不能满足编程实践 ...