java读书笔记整理:一切都是对象
一.用引用操纵对象
每种编程语言都有自己的数据操纵方式。有时候,程序员必须注意将要处理的数据是什么类型。你是直接操纵对象,还是用某种基于特殊语法的间接表示(例如C和C++里的指针)在操纵对象?
所有的这一切在java里都得到了简化。一切被视为对象,因此可采用单一固定的语法。尽管一切都“看作”对象,但操纵的标志符实际上是对象的一个“引用”(reference)。
例如:用遥控器(引用)来操纵电视机(对象)。
分析:1.改变音量,实际操控的是遥控器(引用)
2.四处走动,只要带着遥控器(引用)而不是电视机(对象),仍旧可以操控电视
3.即使没有电视机,遥控依然可以独立存在
也就是说,你拥有一个引用,并不一定需要一个对象与它关联。因此,如果想操纵一个词或句子,则可以创建一个String引用:
String s;
但这里创建的只是引用,并不是对象。如果此时向s发送一个消息,就会返回一个运行时错误。这是因为此时s实际上没有与任何事物关联(即,没有电视机)。因此,一种安全的做法是:创建一个引用的同时便进行初始化。
String s=”hello”;
但这里用到了java语言的一个特性:字符串可以用带引号的文本初始化。通常,必须对对象采用一种更通用的初始化方法。
一旦创建了一个引用,就希望它能与一个新的对象关联。通常用new关键字来实现这一目的的。new关键字的意思是“给我一个对象”,所以前一例子可以写成:
String s=new String(“hello”);
它不仅表示“给我一个新的字符串”,而且通过提供一个初始字符串,给出了怎样产生这个String的信息。
&nbs
相关文档:
用Java接口实现回调函数的等价功能
首先,看一下回调函数的定义及起源:
简而言之,回调函数就是一个通过函数指针调用的函数,如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说是回调函数。
为什么要使用回调函数?
因为可以把调用者与被调用者分开。调用者不关心被 ......
8种基本数据类型有相应的8种包装类(Wrapper)对应,分别是:Character,Byte,Short,Integer,Long,Float,Double,Boolean.
特点:
1.提供了valueOf(String)用于从字符串转换及toString()转换成字符串
2.通过xxxxValue()方法可以得到所包装的值,如Integer对象的intValue()方法.
示例代码:
public class DoubleAndString {
pu ......
A:
设计模式之Factory(简单工厂模式、工厂方法和抽象工厂)
了解反射:
Class.forName().newInstance();
1.简单工厂方法
角色:
具体工厂
抽象产品
具体产品
比喻:
一个产业结构单一,只专门一个产品领域的小工厂,如软件。
2工厂方法
角色:
抽象工厂:不做具体的工作,完成生产产品所必须 ......
注:wait notify 都是Object的方法
同步(阻塞) :是一种防止对共享资源访问导致的数据不一致的一种模式。
详细请参看操作系统。
在Java中,由于对多线程的支持,对同步的控制主要通过以下几个方法,synchronized,和wait(),notify()和notifyAll(),下面进行一一的讲解:
A关键字synchronized
每个java对 ......
学生在学习jdbc的时候,会问到怎么调用存储过程,现在将java调用oracle存储过程的示例总结如下。(关于调用sqlserver的存储过程将在下次进行小结请关注)
一:无返回值的存储过程
存储过程为:
• create or replace procedure adddept(deptno number,dname varc ......