<java核心技术卷i>第一章主要内容包括三点: 1:Java白皮书的关键术语:描述Java的十一个关键字: 2:Java applet 3 :关于Java的常见误解   1:第一章:Java白皮书的关键术语:描述Java的十一个关键字: 简单性,面向对象,分布式,健壮性,安全性,体系结构中立,可移植性,解释型,多线程,高性能,动态性 部分介绍如下: 简单性:Java语法相当于C++,为一个“纯净版本”, Java去掉了C++中的头文件,指针运算(指针语法),结构,联合,操作符重载,虚基类等.…
第一章概述 1.2 分层 网络编程通常分不同层次进行开发,每一层负责不同的通信功能. 一个协议族比如TCP/IP,通常是一组不同层次上多个协议的组合.一般可以认为是是四层协议系统: 链路层:有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡.它们一起处理与电缆(或其他任何传输媒介)的物理接口细节.协议有以太网协议. 网络层:处理分组在网络中的活动,例如分组的选路.一般协议有ip协议,ICMP协议,IGMP协议. 运输层:有时也叫传输层,为两台主机系统提供…
创建虚拟机时需注意三点: 在BIOS中开启Intel VT,以支持64位虚拟机系统: 对于Ubuntu 16以上版本,至少分配10G以上初始控件. 增加一块网卡,选择Host-Only网络,用于主机和虚拟机的网络连接. Ubuntu安装好以后,创建用户和root密码,进入系统. 点击虚拟机面板"管理-全局设定",将网络地址设置为与主机同一个网段: 进入Ubuntu网络设置(点击右上角图标),把Host-Only网卡设为手动获取IP地址,填入主机同网段IP: 重启一下网络,用主机ping…
章节介绍 主要介绍并发编程时间中可能遇到的问题,以及如何解决. 主要问题 1.上下文切换问题 时间片是cpu分配给每个线程的时间,时间片非常短. cpu通过时间片分配算法来循环执行任务,当前任务执行一个时间片之后会切换到下一个任务.但是在切换之前会保存上一个任务的状态,以便再切换到这个任务时候,能够加载这个任务的状态.所以任务从保存再到加载的过程就是一次上下文切换.类似于读英文书时,遇到不懂的单词,记下读到的行数,翻出词典查询,查询完成后再翻到需要阅读的地方进行读取似的. 举例说明 多线程程序不…
因为有个不会存在大量连接的小的Web服务器需求,不至于用上重量级服务器,于是自己动手写一个服务器. 同时也提供了一个简单的Web框架.能够简单的使用了. 大体的需求包括 能够处理HTTP协议. 能够提供接口让使用者编写自己的服务. 会省略一些暂时影响察看的代码.还不够完善,供记录问题和解决办法之用,可能会修改许多地方. 让我们开始吧~ // 更新 2015年09月30日 关于读事件 Project的地址 : Github 从ServerSocket开始 点这里是这部分的完整代码,可以对照察看 大…
2017年11月29日 来到新项目,需要用到Spring MVC ,那么我就开始记录我这次的学习. Spring MVC 框架是围绕一个 DispatcherServlet 来设计的,这个 Servlet 会把请求分发给各个处理器,并支持可配置的处理器映射.视图渲染.本地化.时区与主题渲染等,甚至还能支持文件上传.处理器是你的应用中注解了 @Controller 和 @RequestMapping 的类和方法,Spring 为处理器方法提供了极其多样灵活的配置.还可以配置字符编码,因为这里是把…
基本没讲什么,一点点计算机网络发展史,一点点socket()简单介绍,最重要的是1.3节协议无关性. 协议无关性: 贯穿整本书的一个重要特性,他主要强调的是 socket是网络协议无关的编程接口. socket给出一个struct sockaddr结构,每一种协议都有自己特定的地址结构来记录协议中需要的基本信息,通过强制类型转换成struct sockaddr结构.这样可以屏蔽类型,把所有协议的API抽象成一个统一的接口,即套接字. 还有一个小技巧:包裹函数,就是把socket重新打包,以首字母…
 本章介绍了安卓系统移植与驱动开发的概述,安卓的系统架构有四层:1 Linux内核,2 c/c++代码库, 3 Android SDK API, 4 应用程序 在读的过程中看到了专业名词,查了查,长点见识 API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节.安卓在移植的时候很大程度上市Linux内核的移植,安卓版本的不同是…
徒手用Java来写个Web服务器和框架吧<第一章:NIO篇> 接上一篇,说到接受了请求,接下来就是解析请求构建Request对象,以及创建Response对象返回. 多有纰漏还请指出.省略了很多生产用的服务器需要处理的过程,仅供参考.可能在不断的完善中修改文章内容. 先上图  // 2015年09月30日 更新请求的解析部分 项目地址: https://github.com/csdbianhua/Telemarketer 首先看看如何解析请求 解析请求 构建Request对象 这部分对应代码在…
对 象 与 类 4.1 面向对象程序设计概述 面向对象程序设计(简称 OOP) 是当今主流的程序设计范型, 它已经取代了 20 世纪 70 年代的" 结构化" 过程化程序设计开发技术.Java 是完全面向对象的, 必须熟悉 OOP 才能 够编写 Java 程序. 面向对象的程序是由对象组成的, 每个对象包含对用户公开的特定功能部分和隐藏的实现部分.程序中的很多对象来自标准库,还有一些是自定义的.究竟是自己构造对象, 还是从外界购买对象完全取决于开发项目的预算和时间.但是, 从根本上说,…
第1章 Java程序设计概述1.1 Java程序设计平台 具有令人赏心悦目的语法和易于理解的语言,与其他许多优秀语言一样,Java满足这些要求. 可移植性 垃圾收集 提供大型的库  如果想要有奇特的绘图功能,网络连接功能和数据库存取功能无需自己动手编写代码 功能齐全的出色语言 高质量的执行环境,提供庞大的库.集多种优势于一身 注:  白皮书:www.oracle.com/technetwork/java/langenv-140151.html  11个关键术语的论述:http://horstma…
之前对Java的基础知识有过学习,现在开始学习<Java核心技术卷1>,将一些新学的知识点,做简要记录,以备后续回顾: 1.double (1)所有的“非数值”都认为是不相同的 if(x==Double.NaN) //永远是true (2) 可以通过Double.isNaN 来判断是不是“非数值” public static void main(String[] args) { int a=9; float c=3.4f; double d=5.6D; System.out.println(D…
<java核心技术卷i> 第三章:java基本程序结构: 每次看书,去总结的时候,总会发现一些新的东西,这次对于java的数组有了更深的了解: java中的数据类型,运算符,字符串,输入输出,控制流,大数值,数组: 数据类型:4 种整形,2种浮点型,1种字符类型 字符类型:char "A"表示含有A的字符串,其末尾含有字符串结束符,'A'则表示单个A字符 特殊字符需要转义,如: 转义序列 名称 Unicode值 \b 退格 \u0008 \t 制表 \u0009 \n 换行…
<Java核心技术 卷II 高级特性(原书第9版)> 基本信息 原书名:Core Java Volume II—Advanced Features(Ninth Edition) 作者: (美)Cay S. Horstmann    Gary Cornell 译者: 陈昊鹏 王浩 姚建平 丛书名: Java核心技术系列 出版社:机械工业出版社 ISBN:9787111442509 上架时间:2014-2-21 出版日期:2014 年2月 开本:16开 页码:1 版次:1-1 所属分类:计算机 &…
Java核心技术·卷 II 内容介绍 Java领域最有影响力和价值的著作之一,由拥有20多年教学与研究经验的资深Java技术专家撰写(获Jolt大奖),与<Java编程思想>齐名,10余年全球畅销不衰,广受好评.第10版根据Java SE 8全面更新,同时修正了第9版中的不足,系统全面讲解了Java语言的核 心概念.语法.重要特性和开发方法,包含大量案例,实践性强. 一直以来,<Java核心技术>都被认为是面向高级程序员的经典教程和参考书,它内容翔实.客观准确,不拖泥带水,是想为实…
Tomxin7 如果你有想看书的计划,但是还在纠结哪些书值得看,可以简单看看"观赏指南"系列,本文会简单列出书中内容,给还没有买书的朋友提供一个参考. 前言 秋招过去很久了,虽然在学校的时候有恶补java基础,但是都是为了面试而准备的,有些技术并没有进行全面的了解,再加上java现在疯狂的更新版本,很多新东西没有了解过,所以就打算再过一遍.java的书籍很多,也不想重复的看,所以就买了两本写的比较系统的<java核心技术卷I II>,本篇文章主要是想分享一下卷I,如果你正打…
Java 的基本程序设计结构 现在, 假定已经成功地安装了 JDK,并且能够运行第 2 章中给出的示例程序.我们从现在开始将介绍 Java 应用程序设计.本章主要介绍程序设计的基本概念(如数据类型.分支以及循环)在 Java 中的实现方式. 非常遗憾, 需要告诫大家, 使用 Java 编写 GUI 应用程序并不是一件很容易的事情, 编程者需要掌握很多相关的知识才能够创建窗口. 添加文本框以及能响应的按钮等.介绍基于 GUI 的 Java 应用程序设计技术与本章将要介绍的程序设计基本概念相差甚远,…
<Java核心技术·卷Ⅰ:基础知识(原版10>学习笔记 第5章 继承 目录 <Java核心技术·卷Ⅰ:基础知识(原版10>学习笔记 第5章 继承 5.1 类.超类和子类 5.1.1 定义子类 5.1.2覆盖方法 5.1.3子类构造器 5.1.4 继承的层次 5.1.5 多态 5.1.6 理解方法调用 5.1.7 阻止继承:final类和方法 5.1.8 强制类型转换 5.1.9 抽象类 5.1.10 受保护访问 5.2 Object: 所有类的超类 5.2.1 equals方法 5…
第三章 Java的基本程序设计结构 Java对大小写敏感 命名规范为骆驼命名法,不能使用保留字 main方法必须声明为public 如果main方法正常退出,java应用程序的退出代码为0,表示成功运行了程序.如果希望终止程序时返回其他代码,那就需要调用System.exit方法. Java通用语法是 object.method(parameter),这等价于函数调用 System.out.print输出不换行 三种注释方式 //. /*  */(不能嵌套).第三种可以用来自动生成文档 Java…
9月5日 学习章节:第二章 Java程序设计环境 学习包括Java的安装.命令行工具.IDE.图形化开发环境等. 9月6日 学习章节:第三章 Java的基本程序设计结构 学习包括注释.数据类型.变量.运算符等. 9月7日 学习章节:第三章 Java的基本程序设计结构 学习运算符及字符串的基本原理和各种相关函数. 9月9日 学习章节:第三章 Java的基本程序设计结构 学习输入输出.控制流程.数组等. 9月10日 学习章节:第三章 Java的基本程序设计结构 第四章 对象与类 学习大数值.数组.面…
Java 程序设计环境 本章主要介绍如何安装 Java 开发工具包( JDK ) 以及如何编译和运行不同类型的程序: 控制台程序. 图形化应用程序以及 applet.运行 JDK 工具的方法是在终端窗口中键入命令. 然而, 很多程序员更喜欢使用集成开发环境. 为此,将在稍后介绍如何使用免费的开发环境 编译和运行 Java 程序.尽管学起来很容易, 但集成开发环境需要吞噬大量资源, 编写小型程 序时也比较烦琐. 一旦掌握了本章的技术,并选定了自己的开发工具,就可以学习第 3 章, 开始研究 Jav…
前几天面试被问到:“Java的优点有哪些?”,当时只回答了跨平台和解释型两点,做的并不是太好,所以今天小编就总结一下Java的几大优点,增加自己的知识储备. 1.跨平台性: Java通过自带的JVM实现“一次编译,处处运行”的跨平台性,适应场景广: 2.面向对象: 面向对象编程比较符合人类逻辑思维方式,使得Java开发简单易用,还有着代码扩展和代码复用性强的特点: 3.多线程: Java内部实现了多线程,并且定义了一系列的工具和方法去建立和管理用户自定义的线程,支持多个任务同时进行. 4.安全性…
Java 泛型优点之编译时类型检查 使用泛型代码要比非泛型代码更有优势,下面是 Java 官方教程对泛型其中一个优点的介绍: "Stronger type checks at compile time. A Java compiler applies strong type checking to generic code and issues errors if the code violates type safety. Fixing compile-time errors is easie…
来源:http://www.jianshu.com/p/5f499f8212e7 引言 本文试图从一个更高的视角来总结Java语言中的并发编程内容,希望阅读完本文之后,可以收获一些内容,至少应该知道在Java中做并发编程实践的时候应该注意什么,应该关注什么,如何保证线程安全,以及如何选择合适的工具来满足需求. 当然,更深层次的内容就会涉及到JVM层面的知识,包括底层对Java内存的管理,对线程的管理等较为核心的问题,当然,本文的定位在于抽象与总结,更为具体而深入的内容就需要自己去实践,考虑到可能…
4.1 面向对象程序设计概述 每个对象包含对用户公开的特定功能部分和隐藏的实现部分. 4.1.1类 由类构造对象的过程称为创建类的实例. 封装(数据隐藏)是与对象有关的.从形式上看,封装不过是将数据和行为组合在一个包里,并对对象的使用者隐藏了数据的实现方式. 对象中的数据:实例域,  方法:操纵数据的过程..    对于每个特定的类实例(对象)都有实例域.这些值的集合就是 这个对象的当前状态.         无论何时,只要向对象发送一个信息,它的状态就有可能发生改变. 封装的关键:绝对不能让类…
简单记录,Java 核心技术卷I 基础知识(原书第10 版) 一个简单的Java应用程序"Hello, World!" Hello, World! Goodbye,World! 一个最简单的Java应用程序,Hello,Java public class FirstSample { public static void main(String[] args) { System.out.println("We will not use 'Hello, World! '"…
前言: 虽然个人专攻.NET方向,不过由于个人是干教育行业的,方方面面的东西,不能说都必须精通,但肯定多少都会涉及到. 一个菜鸟学员,从啥都不会,经过一步步学习,最后到企业上手掌管一个模块甚至一个项目,这期间的艰难也只有他自己知道. 也正是如此,真心觉得一套系列性的文档是多么重要,因此决定整理一下所有知识点,还有网上热销的书籍,以及那些简明扼要的例子,搞一个系列性的参考文档. 这套所谓的“Java企业实训”,也算是给自己一个深造基础的机会吧. 各位觉得还不错的,点点赞啥的,多一分支持 多一分鼓励…
1.初步了解"进程"."线程"."多线程" 说到多线程,大多都会联系到"进程"和"线程".那么这两者到底是什么呢?两者又有什么关系呢? 先来看进程的定义: 进程:进程是操作系统结构的基础:是一次程序的执行:是一个程序机器数据在处理机上顺序执行时所发生的活动:是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位. 初看这个定义会觉得抽象,难以理解,但可以打开Windows任务管理器,那些…
[深入Java虚拟机]之:Java内存区域与内存溢出 高速缓存模型如下: ----------------------------------------------------分割线---------------------------------------------------------------------- 内存区域 Java虚拟机在执行Java程序的过程中会把他所管理的内存划分为若干个不同的数据区域.Java虚拟机规范将JVM所管理的内存分为以下几个运行时数据区:程序计数器.J…
写这篇文章的目的是想总结一下自己这么多年来使用java的一些心得体会,主要是和一些java基础知识点相关的,所以也希望能分享给刚刚入门的Java程序员和打算入Java开发这个行当的准新手们,希望可以给大家一些经验,能让大家更好学习和使用Java. 这次介绍的主要内容是和J2SE相关的部分,另外,会在以后再介绍些J2EE相关的.和Java中各个框架相关的内容. 经过这么多年的Java开发,以及结合平时面试Java开发者的一些经验,我觉得对于J2SE方面主要就是要掌握以下的一些内容. 1. JVM相…