《Head First Java》 中文版 (第二版)

IT`huhui前言录

《Head First Java》这本书我不算特别细的看了一遍。认为十分适合初学者,甚至是没接触过语言的人快速入门。但是我认为如果只看这"一块砖头"的话不够,事实上看完之后我觉得还是不能编程。但是在一些java上的问题他解释的很生动基础。甚至解决了我之前还在疑问的问题。总体来说,是一本很好的书,否则也不会一整个 Head First 系列都那么受欢迎了。

系列简介

Head First 系列书籍是由 O'Relly 出版社发行的一系列教育书籍,中文一般翻译为“深入浅出”,它强调以特殊的方式排版,由大量的图片和有趣的内容组合构成,而达到非疲劳的沉浸式学习效果。
但是现在我就看了Java系列,其他的有时间我也一定会读读。

简评

就书本线路来说,由浅入深,贯彻了他们的方针。重点是写得十分幽默,而且里面程序都和现实场景加上图相结合,减少了很多看书看代码的违和感。

在这里我记录下其中我印象最深刻而做的小笔记,因为其他地方在我之前学习java都大同小异。

  1. 记住java的工作方式:源代码-编译器-输出(翻译为可以执行内容)-java虚拟机来读取和执行

  2. 拜访对乡村
  • 了解面向对象的概念。
  • main()作用:用来启动你的java引用程序
    其中书里面引用所写的图,我觉得写得十分好
  1. 认识变量
  • 对象的声明,创建,复制
    Dog myDog = new Dog();
    Dog myDog(声明一个引用变量)
    = (链接对象和引用)
    new Dog()(创建对象)

  • 可回收堆对象和引用的内存图
  • 数组的内存图。(PS.数组也是对象)

  1. 对象的行为
    封装的基本原则:将你的实例变量标记为私有,并提供get 和 set方法来控制存取行为。

  2. 多态的疑问点:
  • Object类是具体的,为什么允许创建Object对象?
    解答:有时候需要一个通用的对象,一个轻量化的对象。最常见用于线程的同步化、
  • 对象杀手
    ①引用永久性的离开他的范围

    public class StackRef{
    public void foof(){
        barf();
    }
    public void barf(){
        Duck d =new Duck();
    }
    }

    ②引用赋值到其他对象

    public class ReRf{
    Duck d = new Duck();
    public void go(){
        d  = new Duck();
    }
    }

    ③直接将引用设为null

    public class ReRf {
    Duck d= new Duck();
    public void go(){
         d= null;
    }
    }

对我影响

解决了一些我之前学习的模糊点。算是对我之前java基础再次做一个小巩固。但是明显如果要继续深入,这本书绝不适合。我现在一边加深学习java,一边还在接触学习html 5 ,微信小程序,云等各个方面知识,希望能多学习一些吧。

【书海】《Head First Java》 ——读后总结的更多相关文章

  1. java 读写锁详解

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt124 在java多线程中,为了提高效率有些共享资源允许同时进行多个读的操作, ...

  2. Java读properties文件中文乱码问题的解决方法

    java读properties文件,包含中文字符的主要有两种: 1.key中包含中文字符的(value中也有可能包含) 2.key中不包含中文字符的(value中有可能包含) 1.key中包含中文字符 ...

  3. java读properties文件 乱码

    java读properties文件,包含中文字符的主要有两种: 1.key中包含中文字符的(value中也有可能包含) 2.key中不包含中文字符的(value中有可能包含) 1.key中包含中文字符 ...

  4. Java并发指南10:Java 读写锁 ReentrantReadWriteLock 源码分析

    Java 读写锁 ReentrantReadWriteLock 源码分析 转自:https://www.javadoop.com/post/reentrant-read-write-lock#toc5 ...

  5. Java读源码之ReentrantLock

    前言 ReentrantLock 可重入锁,应该是除了 synchronized 关键字外用的最多的线程同步手段了,虽然JVM维护者疯狂优化 synchronized 使其已经拥有了很好的性能.但 R ...

  6. Java读源码之ReentrantLock(2)

    前言 本文是 ReentrantLock 源码的第二篇,第一篇主要介绍了公平锁非公平锁正常的加锁解锁流程,虽然表达能力有限不知道有没有讲清楚,本着不太监的原则,本文填补下第一篇中挖的坑. Java读源 ...

  7. Java读源码之CountDownLatch

    前言 相信大家都挺熟悉 CountDownLatch 的,顾名思义就是一个栅栏,其主要作用是多线程环境下,让多个线程在栅栏门口等待,所有线程到齐后,栅栏打开程序继续执行. 案例 用一个最简单的案例引出 ...

  8. 第5篇-调用Java方法后弹出栈帧及处理返回结果

    在前一篇 第4篇-JVM终于开始调用Java主类的main()方法啦 介绍了通过callq调用entry point,不过我们并没有看完generate_call_stub()函数的实现.接下来在ge ...

  9. java编译后字节码解析

    java编译后字节码解析 参考网摘: https://my.oschina.net/indestiny/blog/194260

  10. servlet中Java连接数据库后的基本操作

    servlet中Java连接数据库后的基本操作 在eclipse中新建一个工程:login 在Server中新建一个服务器,基本的操作不用说了,在前两天的笔记中可以找到; 需要知道数据库的用户名和密码 ...

随机推荐

  1. Oracle客户端与服务器字符集不统一的处理

    当Oracle客户端与服务器的字符集不统一时. 症状: 如:ORA-00283: ?????????? 提示信息中有好多问号. 解决方法: 1查询服务器的字符集: SQL> conn / as ...

  2. WEB服务器、应用程序服务器、HTTP服务器区别

    很清晰的解释了WEB服务器.应用程序服务器.HTTP服务器区别 转载自 http://www.cnblogs.com/zhaoyl/archive/2012/10/10/2718575.html WE ...

  3. ORACLE数据库存储结构

    一.数据块 Oracle对数据库数据文件中的存储空间进行管理的单位是数据块.数据块是数据库中最小的(逻辑)数据单位,是最小的I/O单位.与数据块对应的,所有数据在操作系统级的最小物理存储单位是字节.每 ...

  4. asp.net web api 测试帮助页面建立并测试

    asp.net web api 测试帮助页面建立并测试 现在使用WEB API来开发,越来越流行. 在开发过程中的测试调试,可以使用Fiddler等工具来帮助测试外,还有: 在asp.net 中有种方 ...

  5. Hibernate框架概念

    1.Hibernate是ORM框架,完成对象的持久化操作. 2.允许开发者采用面向对象的方式来操作数据库. 3.安装Hibernate的插件到Eclipse中来自动生成配置文件. 4.Hibernat ...

  6. vc 中调用COM组件的方法

    需求:1.创建myCom.dll,该COM只有一个组件,两个接口:   IGetRes--方法Hello(),   IGetResEx--方法HelloEx() 2.在工程中导入组件或类型库  #im ...

  7. pcm跟.wav文件的关系

    PCM(Pulse Code Modulation----脉码调制录音).所谓PCM录音就是将声音等模拟信号变成符号化的脉冲列,再予以记录.PCM信号是由[1].[0]等符号构成的数字信号,而未经过任 ...

  8. iOS定位到崩溃代码行数

    不知道大家是不是在代码调试过程中经常遇到项目崩溃的情况: 比如: 数组越界: 没有实现方法选择器: 野指针: 还有很多很多情况.......昨天学到了一种可以直接定位到崩溃代码行数的一个命令,记录一下 ...

  9. JS打印页面

         打印 整个html页面(PS:样式要写在页面里面才能打印(就是用内部样式))             <a id="dayi" runat="server ...

  10. java 查询 mongodb 中的objectid

    网上找了很久查询objectid的方法都是错的,用mongovue能查询出来,但就是用java不知道怎么查询 1.mongovue里的查询方式: {"_id" : ObjectId ...