第二章:一切皆对象。(一)

2.1、用引用操作对象。

  1.一个形象的比喻:在java中,一切皆对象。但是操纵的标示符实际上是对象的一个“引用”(reference)。可以想象成一个遥控器(引用)操纵电视机(对象)。

想要换频道或者调整音量,实际操纵的是遥控器(引用),再由遥控器来操纵电视机(对象)。

  2.有5个不同的地方可以存储数据:

    1、寄存器:这是最快的存储区。它位于处理器内部。寄存器的数量极其有限。根据需求进行分配,不能直接控制。

    2、堆栈:位于通用RAM(随即访问存储器)中,堆栈指针若向下移动,则分配新的内存;若向上移动,释放内存。创建程序时,java系统必须知道存储在堆栈内所有项

    的确切生命周期,以便上下移动堆栈指针。

    3、:一种通用的内存池(也位于RAM区),用于存放所有的java对象。当new一个对象的时候,会自动在堆里进行存储分配。 用堆进行存储分配和清理可能比堆栈进行存储分配需要更多的时间。

    4、常量存储:存放在ROM(只读存储器)。字符串池就是这样,所有字面常量字符串和具有字符串值的常量表达式会置于特殊的静态存储区中。

    5、非RAM存储:流对象和持久化对象。

  3.基本类型:置于堆栈中,更加高效,占用存储空间不变,保证java的可移植性的一个原因。

基本类型 大小   最小值 最大值 包装器
boolean - - - Boolean
char 16bit Unicode 0 Unicode 216-1 Character
byte 8bit -128   127 Byte
short 16bit -215 215-1 Short
int 32bit -231 231-1 Integer
long 64bit -263 263-1 Long
float 32bit IEEE754   IEEE754 Float
double 64bit IEEE754 IEEE754 Double
void - - - Void

  

第二章:一切皆对象。(一),布布扣,bubuko.com

时间: 2024-11-08 19:22:14

第二章:一切皆对象。(一)的相关文章

Thinking in Java(第四版)—— 第二章 一切皆对象

一.对象保存的位置 寄存器(cpu) 栈(变量) 堆(对象) 静态域(static) 常量池(string) 非内存区池 二.基本数据类型 整数型 byte short int long 8 16 32 64 浮点型 float double 32 64 字符型 char 16 Unicode 布尔型 boolean 1 三.static 属于类调用不属于对象(一般工具类中用的多)

JAVA 入门第二章 (面对对象)

本渣渣鸽了一个月终于有时间更新.因为有c++基础,学起来这章还是比较简单的,本章我觉得是程序猿质变课程,理解面向对象的思想,掌握面向对象的基本原则以及 Java 面向对象编程基本实现原理,熟练使用封装.继承.多态面向对象三大特性,感受和c++之间的异同,下面是学习路线. 1.类和对象  1-1 什么是类和对象 1-2 如何定义 Java 中的类 1-3 如何使用 Java 中的对象 1-4 Java 中的成员变量和局部变量 1-5 Java 中的构造方法 1-6 Java 中的 static 使

第二章--应用程序对象

上下文对象HttpContext 为了进一步简化服务器端对参数的处理工作,ASP.NET中定义了HttpContext类型来统一处理参数的表示问题 底层方法: RewritePath 将服务器收到的请求URL替换为另一个指定的URL (可以做地址的映射) GetSection 获取配置文件中的配置节 RemapHandler 重新设置当前的处理程序应用程序对象 HttpApplication 当HttpContext对象创建之后,HttpRuntime将随后创建一个用于处理请求的对象,这个对象的

第二章 便利的对象

像数组.散列(就是哈希)这样保存对象的对象,我们称为容器. 索引:我们最常见的数组下标就是索引. (1) (2) (3) (4) (5)正则表达式 /模式/=~希望匹配的字符串 nil是什么? nil表示对象不存在,就像在正则表达式中表示无法匹配成功一样,方法不能返回有意义的值时就会返回nil.从数组或散列中获取对象时若指定的索引或者键不存在也是返回nil.

Java第二章----对象和类

从第一章到第二章整整隔了一个月的时间,这速度也是慢的无语了.因为这个月负责开发公司一个SaaS类型APP,忙的昏天暗地终于上线了,这才有时间写个博客.本章还是以概念为主,有点枯燥重在理解. 第一节:对象 名词解释 OOA-Object Oriented Analysis-面向对象分析 OOD-Object Oriented Design-面向对象设计 OOP-Object Oriented Programming-面向对象程序设计 面向对象基本特性 万物皆可为对象:任何一件事物都可以表示为程序中

[Effective Java 读书笔记] 第二章 创建和销毁对象 第一条

第二章  创建和销毁对象 第一条 使用静态工厂方法替代构造器,原因: 静态工厂方法可以有不同的名字,也就是说,构造器只能通过参数的不同来区分不同的目的,静态工厂在名字上就能表达不同的目的 静态工厂方法不用每次调用的时候都创建新的对象(其实是因为它是static的,所以只能用static的,所以是一早就创建了,不需要重复创建吧..),比如书中 Boolean.valueOf(boolean) 1 public static final Boolean TRUE = new Boolean(true

如何找对另一半---第二章 找对象 什么能让你放心

第二章 找对象 什么能让你放心 第一节 司马光的"才德理念" 才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜得谓之小人                 -------司马光 一个人头脑聪明,有洞察力,强悍而又毅力,这是他的能力:而心存正直,公道,平和,这是一个人的品德.才能是品德的助手,品德是才能的统帅. 自古昔以来,国之乱臣,家之败子,才有余而德不足,以至于颠覆者多矣......''               ---------司马光 福特为了得到伊麦斯这为员工就把伊麦斯

Effective java 第二章创建和销毁对象 读书笔记

建和销毁对象 一般有两种方式,一种是获得本身的实例,最常用的方法就是提供一个共有的构造器.第二个方法是,类可以提供一个共有的静态工厂方法. 静态工厂方法与构造器不同的三大优势: 有名字: 调用时不用创建新的对象: 返回原来类型的任何子类型对象. 第四大优势: 在创建参数化类型实例的时候,它们使代码变得更加简洁. 服务提供者框架 三个组件: 服务接口 提供者主持API 服务访问API 可选: 服务提供者接口 静态工厂方法的缺点: 类如果不含共有的或者受保护的构造器,就不能被子类化: 它们与其他的静

Thinking In Java笔记(第二章 一切都是对象)

第二章 一切都是对象 2.1 用引用操纵对象 每种语言都具有操纵内存中元素的方式,必须注意将要处理的是什么数据类型,是直接操纵元素还是基于某种特殊语法间接表示(例如C和C++里的指针)来操纵对象. java中一切都被视为对象,可以用单一固定的语法,但程序员所操纵的标识符实际上只是对象的一个"引用",引用可以独立于对象存在,也可以和实际的对象相关联.例如: String s1; String s2 = new String("hello world"); 上面的s1即