Thinking in java 学习笔记 001

原创 2015年07月08日 15:21:58

                                                                                                                         一切都是对象

2.1 用引用操纵对象

Java中只用reference 作为操纵的标识符,可以将其想象成用遥控器(引用)来操纵电视机(对象)实际上背后用的是指针

创建一个String引用并初始化:

String s;

S = “Hello World!”;

 

String s = “Hello World!”;

 

2.2 必须由你创建所有对象

用new操作符来实现引用与对象的关联。

String s = new String(“asdf”);

 

2.2.1 存储到什么地方

1) 寄存器

处于处理器内部的不能直接控制的最快的储存区

2) 堆栈 stack

存取速度快,效率高,因为这里要求被存储的数据有具体大小和存活时间限制,使用弹性小,这里一般存储的是我们的对象引用,而对象是不存储于其中

3 heap

一种通用的内存池,用于存放所有的java对象。编译器不必知道存储的数据在堆中存活时间和大小,提高灵活性的同时,存储分配和清理时间增多。

4常量存储

常量值通常直接存放在程序代码内部。

5RAM存储

2.2.2 特例:基本类型

不用new来创建变量,变量直接存储值,置于栈中

2.2.3 java中的数组

Java确保数组都被初始化,并且不能在它的范围外访问。创建一个数组对象时,就是创建一个引用数组,并且每个引用都会自动被初始为一个特定值(拥有关键字null)。安全性和效率较高。

2.3 永远不需要销毁对象

作用域由花括号的位置确定,决定了在其内定义的变量名的可见性和生命周期。

Java有垃圾回收器,用于监视用new创建的所有对象,并辨别那些不会再被引用的对象,定期释放这些对象的内存空间。

2.4 创建新的数据类型:类

一切都是对象,而class决定了对象的属性。

class Person { /* class body goes here */ }

Person p = new Person();

2.4.1 字段与方法

字段(数据成员)      方法(成员函数)

如果字段是对某个对象的引用,那么必须初始化该引用,以便使其与一个实际的对象相关联。

2.5 方法、参数和返回值

方法的组成:名称、参数、返回值和方法体

方法名参数列表唯一地标识出某种方法。

Int storage(String s) {

   returns.length() * 2;

}

Thinking In java学习笔记

  • 2014年10月05日 21:24
  • 324KB
  • 下载

Thinking in java学习笔记

  • 2012年03月23日 15:58
  • 428KB
  • 下载

Thinking in java学习笔记-并发(二)

线程的状态 进入阻塞状态 1、调用sleep()是任务进入休眠状态 2、通过wait()是线程挂起,直到被notify()或notifyAll()唤醒后进入就绪状态。 3、任务在等待输入/输出完...

thinking in java学习笔记-第一章

最近开始拜读java编程思想这本书,这本书的经典之处我就不过多宣扬了,在这里我只谈谈我读这本书的感受。 这本书是由Bruce Eckel,这个人也许不熟悉,但是他的作品可是如雷贯耳啊,Bruce E...
  • wtxwd
  • wtxwd
  • 2016年12月20日 17:20
  • 466

第9章 接口 —— 《Thinking in Java》学习笔记

很多前辈,老师,面试官考校Java菜鸟的时候时常会说:“面向对象的三大特性是什么?” ‘封装,继承,多态“,看过Java的各种教科书扉页的人相信都能轻松答出来吧。 但是所谓三特性是为何出现?为何如此...

Thinking in Java学习笔记 吐司的制作和消费过程

多个LinkedBlockingQueue队列,每个流程都有一个或两个队列,从上一个流程的队列中获取吐司,本流程处理完毕之后放入下一流程的队列 每个流程通过LinkedBlockingQueue.t...

thinking in java学习笔记(二)

简单的浏览了下前四章,收获还是有的。 1、在方法中 return语句可以立即中断方法的执行。 2、注释文档, 将代码同文档“链接”起来。javadoc便是用于提取注释的工具,一般为public、...
  • Daicsdn
  • Daicsdn
  • 2015年08月24日 20:09
  • 313

Thinking in Java学习笔记 第七章:复用类

如果想初始化引用,可以在代码的下列位置进行: 在定义对象的地方。这意味着他们总是能够在构造器被调用之前初始化 在类的构造器中 就在正要使用这些对象之前,这种方式成为惰性初始化。在生成对象不值得以及不必...

Thinking in Java---多线程学习笔记(2)

多线程中的一个核心问题就是对共享资源的访问问题。因为不能准确的知道一个线程在何时运行,所以如果多个线程对共享资源进行修改的化,结果可能就出错了。解决这一冲突的基本思路就是当一个资源被一个任务使用时,在...
  • acm_lkl
  • acm_lkl
  • 2015年07月13日 12:37
  • 641

Thinking In Java学习笔记之enum状态机

输入的枚举: package com; import java.util.Random; public enum Input{ NICKEL(5),DIME(10),QUARTER(25),DO...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Thinking in java 学习笔记 001
举报原因:
原因补充:

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