JAVA虚拟机》第15章 对象和数组时,发现自己一直不是真的知道到底什么是对象。上面是这样写的“在JAVA虚拟机中的对象和基本类型的结构分离在JAVA编程语言中体现为:对象不能作为局部变量声明。只有对象引用和基本类型可以,对象引用在声明后并不指向任何有意义的东西,只有在引用被显式初始化后对象引用才会指向一个真正的对象。”
前几天在看《深入
面向对象(OOP):程序是由对象组成的,这些对象有自己的属性和能够执行的操作,对象间的通信保证了程序的运行。
类:构造对象的模板。类构造对象的过程称为创建类的实例。实例化一个类有四种途径:明确地使用new操作符;调用Class或者java.lang.reflect.Constructor对象的newInstance()方法;调用任何现有对象的clone()方法;通过java.io.ObjectInputStream类的getObject()方法反序列化。
参数传递给方法:java使用的是值调用,即方法接受的是调用者提供的值,也就是说方法得到的是方法值的一个拷贝,方法不能修改传递给它的任何参数变量的内容。
程序是有对象组成,而不是类。对象引用的声明并不等于创建类的实例。(于2008.07.13 )
关于零长度的数组和NULL数组:
public class Test { static ArrayList temp; /** * @param args */ public static void main(String[] args) { temp=new ArrayList(); temp.clear(); if(temp.toArray()!=null) System.out.println("!null"); System.out.println(Arrays.toString(temp.toArray())); if(temp.size()==0) System.out.println("0"); if(temp.toArray().length==0) System.out.println("00"); } } 运行结果: !null [] 0 00