对象导论 Thinking in Java 第一章
1.1 抽象过程
1.人们能够解决问题的复杂性直接取决于抽象的类型和质量。
1.2 每个对象都有一个接口
1.3 每个对象都提供服务
1.4 被隐藏的具体实现
1.程序猿分为:类创建者 和 客户端程序猿
*对于这两者的区别和联系:类创建者为写底层和封装实现的开发人员,而客户端程序猿主要是利用API使用类创建者写的类进行开发;两者的角色在一般的开发人员看来是一体的,就如java开发中自己要建类,然后自己使用之。
2.Java访问权限控制
public,private,protected;
同时Java含有一种默认的包访问权限,即在同一包下,可以相互访问其他类的成员,但是不在同一包下,这些类的成员就如private访问类型一样。
1.5 复用具体类
即之后会提到的 组合 方式 <has-a>
1.6 继承<is-a>
1.7 伴随多态的可互换对象
1.向上转型引出的:静态绑定 和 动态绑定
2.静态绑定:在编译期确定调用的具体方法,而不是在运行期;
3.动态绑定:在编译期用 一小段代码 代替绝对地址调用,此段代码可以在运行时计算出需要调用具体方法的地址;这样就可以实现根据不同的对象具有不同的实现方式的目的;
*动态绑定是向上转型的核心,也是 工厂模式 实现的主要核心内容。
1.8 单根继承机构
所有的类都继承自单一的基类 Java --- <Object>
1.9 容器
如Collection,Map等
1.10 对象的创建和生命期
1.C++:认为效率控制是最重要的议题,所以给了程序猿选择的权利。对象的存贮空间和生命周期在编写程序时确定。
2.对象置于:堆栈 或 静态存储区域;这将存贮空间分配和释放置于优先考虑位置;在编程是需要确切的知道对象的数量、生命周期、类型;查找和释放不需要过多时间;
3. 堆(heap)内存池:动态的创建对象; 相对而言,查找和释放需要更多的时间;Java采用了动态的内存分配方式;
4.垃圾回收机制:所有的对象都是单根继承 和 只能以一种方式创建对象<在堆上创建> 这两个特性结合起来。
1.11 异常处理:处理错误
异常处理不是面向对象的特征
1.12 并发编程
1.13 Java 与 Internet
对象导论 Thinking in Java 第一章的更多相关文章
- “全栈2019”Java第一章:安装JDK11(Mac)
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 文章原文链接 “全栈2019”Java第一章:安装JDK11(Mac) 下一章 “全栈2019”Java ...
- Java第一章----Java概述+环境搭建
写在前面的话: Java基础的东西看过好几遍,但是过一段都就忘记了,所以这次我决定花费一些时间整理一个系列博客供以后方便查阅.此系列根据Java编程思想+Java核心技术两本书整理而来,这两本书也是我 ...
- Java 第一章 初识Java
第一章笔记 什么是计算机程序:算机为完成某些功能生产的一系列有序指令集合 Java技术包括: java SE:标准版 java EE:企业版 Java ME:移动版 开发Java程序步骤:1.编写 2 ...
- Java第一章
第一章 计算机程序:计算机为完成某些功能产生的一系列有序指令集合. Java技术包括:JavaSE(标准版) JavaEE(企业版) ---JavaME(移动版) 开发Java程序步骤:1.编写 2 ...
- 20165233 Java第一章学习总结
20165233 2017-2018-2 <Java程序设计>第一周学习总结 教材学习内容总结 第一章 Java特点:语法简单.面向对象.与平台无关.动态. 字节码不能被任何平台直接识别. ...
- 学习JAVA第一章的心得
我抱着万分期待的心情开始了我第一天的JAVA学习课程,其实在第一开始的时候我对计算机行业便有很高地兴趣了.这主要归功于我真的从很小开始就就接触了电脑.进入学校以来,我就很期待老师会怎样教我们,会怎样带 ...
- 疯狂java——第一章 java语言概述与开发环境
J2ME: 主要用于控制移动设备和信息家电等有限存储的设备. J2SE: 整个java技术的核心和基础,它是J2ME和J2EE编程的基础. J2EE: Java技术中应用最广泛的部分,J2EE提供了企 ...
- Effective java第一章引言
菜鸟一枚,开始读第一本书<Effective Java>(第二版)~ 看引言就有好多名词不懂(>_<) 导出的API由所有可在定义该API的包之外访问的API元素组成.一个包的 ...
- 自学Java第一章——《Java概述》
1.1 Java历史 Java诞生于SUN(Stanford University Network),09年SUN被Oracle(甲骨文)收购. Java之父是詹姆斯.高斯林(James Goslin ...
随机推荐
- DBLINK的session无法关闭,报异常!
------解决方法-------------------------------------------------------- --ALTER SESSION alter session clo ...
- php开启openssl的方法,openssl安装
php开启openssl的方法,openssl安装 2014年10月10日 8312次浏览 什么是openssl? 关于openssl,我说的不如百度百科齐全,还是看看百度百科的解释吧!http:// ...
- 解析八大O2O典范:他们都做了什么?
随着无线技术的发展二维码的发展以及智能手机的普及,零售的解决方案不仅在在一台电脑上解决,可以从线上到线下,为消费者贯通线上线下的购物体验.人人都爱O2O,可做得好的O2O案例却并不多.要解决利益分配. ...
- Javascript事件委托
事件委托利用事件冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件未使用事件委托之前: <!DOCTYPE html> <html> <head> &l ...
- 第十二届浙江省大学生程序设计大赛-May Day Holiday 分类: 比赛 2015-06-26 14:33 10人阅读 评论(0) 收藏
May Day Holiday Time Limit: 2 Seconds Memory Limit: 65536 KB As a university advocating self-learnin ...
- Tiling 分类: POJ 2015-06-17 15:15 8人阅读 评论(0) 收藏
Tiling Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8091 Accepted: 3918 Descriptio ...
- 数字证书私钥sign及验证
package com.epay.bank.test.encrypt; import java.io.FileInputStream; import java.security.KeyStore; i ...
- hdu 2837 坑题。
Calculation Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- D3D 模板缓存的创建过程
下面是我对模板缓存创建的理解: 1. 模板缓存是和深度缓存一起被创建的,将深度缓存的一部分作为模板缓存使用. 深度缓存和模板缓存是在Direct3D初始化时创建的,D3DPRESENT_PARAMET ...
- WebForm上传文件FileUpload
//Button1的点击事件 //FileUpload1.FileName为所传文件的名字. //以DateTime.Now.ToString("yyyyMMddhhmmssms" ...