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编程思想--第二章 一切都是对象

2.1用引用操纵对象 一切都看作对象,但操作的标识符实际是对象的一个引用(reference);例如遥控器(引用)来操纵电视机(对象),实际操控的遥控器(引用),再由遥控器来调控电视机(对象)。如果...
  • lyt_7cs1dn9
  • lyt_7cs1dn9
  • 2016年11月28日 17:07
  • 512

java读书笔记整理:一切都是对象

一.用引用操纵对象       每种编程语言都有自己的数据操纵方式。有时候,程序员必须注意将要处理的数据是什么类型。你是直接操纵对象,还是用某种基于特殊语法的间接表示(例如C和C++里的指针)在操纵对...
  • Lynn380712276
  • Lynn380712276
  • 2010年01月12日 23:41
  • 279

深入理解JavaScript----- 一切都是对象

原文地址:点击打开链接 “一切都是对象”这句话的重点在于如何去理解“对象”这个概念。 ——当然,也不是所有的都是对象,值类型就不是对象。 首先咱们还是先看看javascrip...
  • qx1995318
  • qx1995318
  • 2016年08月11日 20:07
  • 317

Java常用核心笔记

Java常用核心笔记 *关键字static用于静态变量和静态方法,即设计它的两种情形:一是为特定域分配单一的存储空间,不要考虑需创建多少个对象,甚至不用创建对象;二是某个方法不与包含它的类的任何对象关...
  • zhuifengshenku
  • zhuifengshenku
  • 2014年02月10日 19:01
  • 998

JAVA编程思想笔记--一切都是对象

2.1 用引用操纵对象2.2 必须由你创建所有对象 一旦创建了一个引用,就希望它能与一个新的对象相关联,通常用new操作符来实现这一目的 2.2.1 存储在什么地方2.3 永远不需要销毁对象2.4...
  • u012360634
  • u012360634
  • 2017年02月23日 15:17
  • 267

Java编程思想(一) —— 一切都是对象及内存分配

2014-7-27 16:59:08 《Java编程思想》 作者:Bruce Eckel 虽然这本书是经典,但是对于一个入门java,又没有其他编程经验的人来讲,实在难以看懂,前前后后看了三遍。 ...
  • iaiti
  • iaiti
  • 2014年08月01日 16:05
  • 11267

【笔记】Java编程思想—一切都是对象

1、用引用(C中的指针)来操纵对象 String s;只是引用,不是对象 应该在创建引用的同时进行初始化 String s = “asdf”; 或String s = new String (“asd...
  • sinat_20476061
  • sinat_20476061
  • 2014年11月29日 16:04
  • 331

一切都是对象---笔记

2.2.11)寄存器:在处理器内部,数量及其有限,所以不能直接控制,也不能在程序中感觉到寄存器存在的任何迹象。2)堆栈:位于RAM中,可以通过对栈指针从处理器那里获得直接支持,指针向下移动,分配新内存...
  • huy8989
  • huy8989
  • 2011年03月30日 21:43
  • 192

Java编程思想笔记——一切都是对象

用引用操纵对象 “引用”(reference),遥控器(引用)操纵电视机(对象)。同时有一个引用,并不需要有一个对象与它关联。操作一个词或句子,则可以创建一个String引用: String ...
  • wszcy199503
  • wszcy199503
  • 2017年12月27日 17:38
  • 39

excel笔记整理

1、excel:由微软公司生产的办公软件之一,电子制表软件,工作簿,可以用来做表格、进行数据处理等 2、打开方式: 方式一: 开始->所有程序->Microsoft office->Mi...
  • yangzai521
  • yangzai521
  • 2016年12月07日 20:51
  • 408
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java笔记整理:一切都是对象
举报原因:
原因补充:

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