Java笔记整理:一切都是对象

原创 2016年08月31日 11:22:04

Java笔记整理:一切都是对象

引用操纵对象

  • 操纵对象的标识符是其引用
  • 引用不一定会与一个对象关联

创建对象

使用new操作符创建新对象

对象存储

  1. 寄存器:最快的存储区,位于处理器内部,不能人为控制
  2. 堆栈
    • 指针向下移动,即分配内存,向上移动,即释放内存
    • 速度仅次于寄存器
    • 编译时确定,灵活性较差
    • 对象引用位于堆栈中,对象不在堆栈中

    • 用于存放所有JAVA对象
    • 编译器不需要知道数据的生存期,灵活性较好
    • 内存分配和释放比堆栈要慢
  3. 常量存储:常量保存在常量池,位于方法区内。垃圾回收器不会干涉方法区
  4. 非RAM存储
    • 流对象:对象转换成字节流进行发送
    • 持久化对象:对象存放在ROM上

基本类型

不需要new进行创建
创建的是自动变量,不是引用,该变量直接存储值,置于堆栈中

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

没有无符号的数值类型
boolean类型没有确定的大小

数组

JAVA确定数组一定会被初始化,而且不能越界访问
对象初始化为null,基本数据初始化为0

永远不需要销毁对象

作用域

作用域由花括号框定
作用域内不能有子作用域
离开作用域后,对象依然存在,会由垃圾回收器销毁

基本类型成员会自动被初始化
基本成员默认值

基本类型 默认值
boolean false
char ‘\u0000’(null)
byte (byte)0
short (short)0
int 0
long 0L
float 0.0f
double 0.0d

局部变量不会被初始化(未初始化变量会引发编译错误)

方法

传递的参数实际上是引用


JAVA没有“向前引用”问题,即类和方法的使用与定义位置无关
java.lang是默认导入到java文件中的

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

一切都是对象(《Java编程思想》第二章总结)

引用和创建对象 方法、参数和返回值 static关键字 Javadoc注释文档 1.引用和创建对象  在Java中,一切都视为对象,操控的标识符实际上是一个引用。例如创建一个Stri...

Linux操作系统原理与应用(陈莉君)——学习笔记

转载于:http://blog.csdn.net/xiahouzuoxin/article/details/8899847    非常感谢。 《Linux操作系统原理与应用》作者陈莉君是翻译《深入理解...

Ubuntu操作系统下Pixhawk原生固件PX4的编译方法

在Ubuntu上搭建环境相对简单许多,按照PX4中文维基官网的教程即可。 工具链安装 权限设置 把用户添加到用户组 “dialout”(如果这步没做,会导致很多用户权限问题): ...

Java编程思想第四版读书笔记——第二章 一切都是对象

ava编程思想第四版读书笔记——第二章 一切都是对象

java编程思想 学习笔记---第二章 一切都是对象

"如果我们说另一种不同的语言,那么我们会发觉一个"

Java学习笔记——一切都是对象

本文为Java编程思想第四版的学习笔记,在此感谢作者Bruce Eckel给我们带来这样一本经典著作,也感谢该书的翻译及出版人员。本文为原创笔记,转载请注明出处,谢谢。 1.用引用操纵对象 每种编...

thinking in java笔记 2 一切都是对象

用引用操作对象 在java中,一切都被视作对象,因此可采用单一固定的语法,但操纵的标识符实际上是对象的一个引用(reference)。 拥有一个引用,并不一定需要有一个对象和它关联,如 strin...

Java 编程思想(第四版)学习笔记(2)一切都是对象

第二章 一切都是对象 一.用引用操作对象 正如用遥控器(引用)控制电视机(对象) 拥有一个引用并不一定需要一个对象与它关联。 创建一个string引用:string s(s没有对象) Str...

读thinking in java笔记(一):一切都是对象

thinging in Java 一切都是对象
  • ZJDWHD
  • ZJDWHD
  • 2016年08月29日 22:12
  • 696

day3 part1:《Thinking in Java》笔记第二章---一切都是对象

Java是基于C++的,但比C++是更纯粹的面向对象程序设计语言(OOP) 用引用操纵对象:Java中所有一切都被看成对象,实质上操纵的标识符是对象的一个引用(reference),引用可以在无对象时...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java笔记整理:一切都是对象
举报原因:
原因补充:

(最多只允许输入30个字)