Java编程思想 4th 第1章 对象导论】的更多相关文章

所有编程语言都提供抽象机制. 面向对象编程似乎是一种很好的编程思想和方式,面向对象编程中的对象简洁描述是:对象具有状态.行为和标识.状态指的是数据存储,存储的数据能反应状态:行为指的是方法,方法表示对象能做什么事情:标识是用于识别对象的,即对象名. Java和C++的第一个不同点:在Java中,动态绑定是默认行为,不需要额外关键字来说明,而在C++中默认是非动态的,如需动态特性,则需要关键字virtual来说明. Java和C++的第二个不同点:在Java中,只允许单继承,不允许多继承,而C++…
1.抽象过程 Q:什么是对象??? A:   1) 万物皆对象 --- 对象具有状态,行为和标识 2)程序是对象的集合,他们通过发送消息来告诉彼此要做的 3)通过创建包含现有对象的包的方式来创建新类型的对象 4)每个对象都具有其类型. 每个对象都是某个类(class)的实例 类与类最重要的区别就是可以发什么样的消息给它. 5)某一特定类型的对象都可以接受同样的消息 2.每个对象都有一个接口 2.1 接口(interface) 2.2 类描述了具有相同特性(数据元素)和行为(功能)的对象集合2.3…
抽象过程 纯粹的面向对象程序设计方式: 万物皆为对象: 对象可以存储数据,还可以在其自身执行操作 程序是对象的集合: 通过发送消息告诉彼此要做的 每个对象都有自己的由其它对象构成的存储:可以在程序中构建复杂的体系,并将复杂性隐藏在对象之后 每个对象都是某个类的对应实例:类的特性在于可以发送什么样的消息给它 某一特定类型的对象可以接收同样的消息 访问控制:隐藏实现细节 类创建者:创建新数据类型的程序员 客户端程序员:使用各种类以实现快速应用开发 向客户端程序员隐藏实现细节 库设计者可以改变设计方式…
Java是基于C++的,但Java是一种更纯粹的面向对象程序设计语言,和C++不同的是,Java只支持面向对象编程,因此Java的编程风格也是纯OOP风格的,即一切都是类,所有事情通过类对象协作来完成. 在Java中,使用引用来操纵对象,在Java编程思想的第四版中,使用的术语是“引用(reference)”,之前有读过Java编程思想第三版,在第三版中,使用的术语是“句柄(handle)”,事实上,我觉得第三版的术语“句柄”更加形象传神,就像你用一个门的把柄来开门关门一样,不用管门是什么门,总…
有了数据,还需要进行数据间的运算,因此Java中也有数据间运算的各种符号,书本称之为操作符,正确的翻译应该是运算符. Java中的运算符同C++相同,运算符同运算符对象构成表达式,表达式是运算对象及运算符组成的式子,对表达式求值将得到一个结果,单独的变量或者字面值也算表达式,结果是其本身.运算符分为:一元运算符.二元运算符.三元运算符.一元即一个作用对象,二元两个作用对象,以此类推. 运算符有先后优先之分,正如先乘除后加减一样,此规则称为优先级.另外,运算符还具有结合律,也即一个运算符是先和该运…
前段时间一直通过网络教程学习Java基础,把面向对象部分学完之后本来打算继续深入学习,但是感觉自己操之过急了,基础根本不够扎实,所以入手了一本<Java编程思想>,希望先把基础打好,再深入学习. 不得不说这本书真的不是浪得虚名,对于我这样的新手看完一二章之后也觉得这本书值得买了.跟网上教程不同,这本书一开始便直接全面深入论述Java面向对象编程中对对象的理解,值得注意的是如果之前没有Java编程的基础,第一章看起来会比较吃力,而且效果也不太好,因为都是理论没有使用代码进行演示说明,所以作者也支…
1.1 抽象过程 1.所有编程语言都提供抽象编程机制. 2.人们所能够解决的问题的复杂性直接取决于抽象的类型(所抽象的是什么)和质量. 3."命令式"语言(basic,c等)都是对汇编语言的抽象,但是仍然要求解决问题时依赖计算机的结构,程序员必须建立起在机器模型(如计算机)和实际待解决问题(例如一项业务)之间的关联. 4.对机器建模的方式就是只针对待解问题建模.如 lisp和apl,只能解决某个特定问题. 5.面向对象方式则通过向实际待解问题提供表示问题元素的工具而更进一步.这种表示方…
1. String s = "asdf"//创建一个String引用,并初始化. String s = new String("asdf")//创建一个新对象,初始化字符串,new将对象存储在“堆”里. 2.内存分配 寄存器 堆栈 堆 常量存储 Technorati 标记: Think in Java 非RAM存储 3.Java不需要销毁对象 作用域 { String s = new String ("a string"); }//End of…
1.对象存储位置 对象的引用存在栈中,对象存在堆中.new 出来的对象都在堆中存储.栈的存取速度较快. 所有局部变量都放在栈内存里,不管是基本类型变量还是引用类型变量,都存储在各自的方法栈中: 但是引用类型变量所引用的对象(包括数组,普通Java对象)则总是存储在堆内存中. 基本类型的包装器类 如 Integer 可以在堆中创建一个非基本对象,用来表示基本类型. 也可以使用 Integer i = 1, Java SE5的自动包装功能将自动的将基本类型转换为包装器类型 2.创建新的数据类型:类…
 -"假设我们说还有一种不用的语言,那么我们就会发觉一个有些不同的世界" 1. 用引用操纵对象        每种编程语言都有自己的数据处理方式. 有些时候,程序猿必须时刻留意准备处理的是什么类型. 您曾利用一些特殊语法直接操作过对象.或处理过一些间接表示的对象吗(C或C++里的指针)? 全部的这一切在JAVA里都得到了简化.在JAVA里一切都被视为对象,虽然是一切都被看成对象.但操纵的标识符实际上是一个"引用"而已.简单来说是:对象好比"电视"…