Thinking In Java读书笔记--对象导论
【对象】
服务提供者==>将对象看做一个服务提供者
【程序员分类】
【类创造者】/【客户端程序员】

【访问控制存在的原因?】
【1】客户端程序员无法触及他们不该触及的部分
【2】允许库设计者/类创造者改变类的内部工作方式而不用担心会影响客户端程序员

【Java访问指定词,access specifier】
public private protected

【组合,composition】
【聚合,aggregation】
【has-a,拥有关系】

【继承】==>【类族】  
[ 基类/超类/父类]
[导出类/继承类/子类]
两种方法可以使得基类和子类产生差异
【1】为子类添加新的方法、行为
【2】覆写[overriding]父类的方法行为

【是一个与像一个】
【is-a】纯粹替代  替代原则   子类完全替代基类对象  不对基类做扩展
【like-a】 子类在基类的基础上扩展基类的行为

【伴随多态的可互换对象】
【前期绑定】
【后期绑定】当向对象发送消息时,被调用的代码直到运行时才能够确定

【转型,Cast】
[向上转型,UpCasting]将导出类看做他的基类
[向下转型]向下转型为更具体的类型==>子类,如何保证正确的进行向下转型?

【单根继承结构】
保证了所有对象都具备某些功能
使得垃圾回收变得容易得多

【容器】
[集合]
【对容器的需要做出必要的选择】
[1]不同容器提供了不同类型的机构和外部行为
[2]不同的容器对于某些操作具有不同的效率
【参数化类型,泛型<T>】

【对象的创建和生命期】
使用对象的最关键问题之一,生成和销毁的方式
[对象的存在都需要一定的资源,特别是内存]
[不在使用的对象应该尽快的释放掉,使其占用的资源能够得到释放和重用]
【对象的生命周期】
【垃圾回收器】
[被设计用来处理内存释放的问题,“知道”对象何时不在被使用,并自动释放对象占用的内存]

【异常处理,处理错误】
Java从一开始就内置了异常处理机制

【并发编程】
[同一时刻处理多个任务的思想]
【并发编程的一个隐患】
[共享资源]==>处理办法:对共享的资源在线程使用期间锁定,任务线程完成其任务后,释放资源锁,其他线程方可使用这项资源

【Java与Internet】
[客户/服务器计算技术]
中央信息存储池,Central repository of information
[Web就是一台巨型服务器]
[web浏览器的优势:一段信息在不经过修改就可以在任何型号的计算机上显示]

Thinking In Java读书笔记--对象导论的更多相关文章

  1. 《Java编程思想》读书笔记-对象导论

    计算机是头脑延伸的工具,是一种不同类型的表达媒体.本文以背景性的和补充性的材料,介绍包括开发方法概述在内的面向对象程序设计(Object-oriented Programming,OOP)的基本概念. ...

  2. think in java 读书笔记 2 —— 套接字

    目录 think in java 读书笔记 1 ——移位 think in java 读书笔记 2 —— 套接字 think in java 读书笔记 3 —— 数据报 概要 1. 套接字基本知识 2 ...

  3. head first java读书笔记

    head first java读书笔记 1. 基本信息 页数:689 阅读起止日期:20170104-20170215 2. 标签 Java入门 3. 价值 8分 4. 主题 使用面向对象的思路介绍J ...

  4. think in java 读书笔记 3 —— 数据报

    目录 think in java 读书笔记 1 ——移位 think in java 读书笔记 2 —— 套接字 think in java 读书笔记 3 —— 数据报 概要 1. 数据报基本知识 2 ...

  5. think in java 读书笔记 1 ——移位

    目录 think in java 读书笔记 1 ——移位 think in java 读书笔记 2 —— 套接字 think in java 读书笔记 3 —— 数据报 在Think in Java中 ...

  6. 【Head First Java 读书笔记】(二)类与对象

    前篇当中,代码都放在main()里面,那根本不是面向对象的做法. 椅子大战(对象如何改变你的一生) 程序规格: 在图形接口画出四方形,圆形和三角形,当用户点选图形时,图形需要顺时针转360度并依据形状 ...

  7. Java读书笔记1

    Java逍遥游记读书笔记 前言 必须先来一句,这是入门级别,高手勿喷~ 写Android的时候总有一些语句不是很理解,其实大部分是Java的内容,所以想系统的学下Java. 这本书——<Java ...

  8. java读书笔记二

    这是我的一些读书笔记: 我研究了一下面向对象: 面向对象符合人类看待事物的一般规律,对象的方法的实现细节是包装的,只有对象方法的实现者了解细节 我觉得面向过程是由过程.步骤.函数组成,过程是核心,面向 ...

  9. Java 基础之一对象导论

    对象导论 1.1 抽象过程 所有编程语言都提供抽象机制.人们所能解决的问题的复杂性直接取决于抽象的类型和质量. 汇编语言是对底层机器的轻微抽象. 我们将问题空间中的元素及其再解空间中的表示称为对象.这 ...

随机推荐

  1. ios禁用多按钮同时点下的效果

    只需要把那些不能同时点下的按钮或者视图设置一下即可. [view setExclusiveTouch:YES]; 避免view上多个button同时按下,则可设置每个button的setExclusi ...

  2. Xcode no visible @interface for xxx declares the selector errors

  3. 一、Autofac入门

    想要将autofac集成到你的应用程序中需要经过如下步骤: 1.使用控制翻转(IoC)的思想架构你的应用程序: 2.添加autofac引用: 3.在应用程序入口...(At application s ...

  4. codeforces432D Prefixes and Suffixes(kmp+dp)

    转载请注明出处: http://www.cnblogs.com/fraud/          ——by fraud D. Prefixes and Suffixes You have a strin ...

  5. 飘逸的python - 多条件排序及itemgetter的应用

    曾经客户端的同事用as写一大堆代码来排序,在得知python排序往往只需要一行,惊讶无比,遂对python产生浓厚的兴趣. 之前在做足球的积分榜的时候需要用到多条件排序,如果积分相同,则按净胜球,再相 ...

  6. php+mysql+pdo连接数据库

    1.$pdo = new PDO("mysql:host=localhost;dbname=test","root","123456");/ ...

  7. 新手必看的jQuery优化笔记十则

    jQuery优化 1.简介 jQuery正在成为Web开发人员首选的JavaScript库,作为Web开发者,除了要了解语言和框架的应用技巧外,如何提升语言本身的性能也是开发人员应该思考的问题.文章就 ...

  8. mysql之7xtrabackup

    目录: 1.前言 2.环境 3.开始备份 3.1.innobackupex介绍 3.2.一次完全备份 3.3.一次完全恢复 3.4.增量备份 3.5.增量备份的恢复过程 1.前言: Xtrabacku ...

  9. TFS2013团队使用纪要

    Team Foundation Server(TFS)是微软推出的团队项目管理工具,主要包含代码版本控制,工作任务分派,持续集成,测试等一系列管理任务. 由于团队之前人数较少,使用的仅有代码版本控制( ...

  10. android导航设计

    http://www.geekpark.net/read/view/199244 Android 应用中十大导航设计错误 http://mobile.51cto.com/design-432944.h ...