您的位置:jsp学习站首页 >> JAVA类 >> JAVA实例 >> Java编程思想读书笔记(第5-7章)

Java编程思想读书笔记(第5-7章) (1)

[ 来源:互网络 | 更新日期:2007-09-27 05:30:11 | 浏览次数:9717]
简介:  寄存器:我们在程序中无法控制    2
第2章  万事万物皆对象
  
  一.所有对象都必须由你建立
  
  1.  存储在哪里
  
  1.  寄存器:我们在程序中无法控制
  
  2.  stack:存放基本类型的数据和对象的reference,但对象本身不存放在stack中,而是存放在Heap中
  
  3.  Heap:存放用new产生的数据
  
  4.  Static storage:存放在对象中用static定义的静态成员
  
  5.  Constant storage:存放常量
  
  6.  NON-RAM:硬盘等永久存储空间
  
  2.  特例:基本型别
  
  基本类型数据存放在Stack中,存放的是数据。而产生对象时,只把对象的reference存放在stack中,用于指向某个对象,对象本身存放在Heap中。
  
  3.  Java中的数组
  
  当你产生某个存储对象的数组时,真正产生的其实是存储reference的数组。引数组建立后,其中的每一个reference都会被自动设为null,表示“不指向任何对象”。
  
  二.建立新的数据型别:Class
  
  1.  数据成员和函数
  
  1.1  基本成员的缺省值
  
  1)  当class的某个成员属于基本型别时,即使你没有为它提供初值,Java仍保证它有一个缺省值。
  
  2)  只有当变量身份是“class内的成员时,Java才保证为该变量提供初值。
  
  三.函数(Mehtods),引数(arguments),返回值(return values)
  
  1.  引数列
  
  当引数传递的是对象时,传递的是对象的reference。
  
  四.注解用内嵌式文档
  
  Java提供两种注解风格:/*XXXX*/、//XXXX
  
  第3章  控制程序流程
  
  一.使用Java运算符
  
  1.关系运算符
  
  1.) 当对两个对象运用关系运算符进行比较时,比较的是object reference,如:
  
  java/lang/Integer.java.html" target="_blank">Integer n1 = new java/lang/Integer.java.html" target="_blank">Integer(3);
  java/lang/Integer.java.html" target="_blank">Integer n2 = new java/lang/Integer.java.html" target="_blank">Integer(3);
  java/lang/System.java.html" target="_blank">System.out.println(n1==n2);
  
  结果为false,因为两个object reference(n1和n2)值是不同的
  
  2) quals()的缺省行为也是拿referenct来比较。不过Java中的class覆写了equals方法,如:
  
  java/lang/Integer.java.html" target="_blank">Integer n1 = new java/lang/Integer.java.html" target="_blank">Integer(3);
  java/lang/Integer.java.html" target="_blank">Integer n2 = new java/lang/Integer.java.html" target="_blank">Integer(3);
  java/lang/System.java.html" target="_blank">System.out.println(n1.quals(n2));//值为true
  
  2.  逻辑运算符
  
  1)  只能将and、or、not施用于boolean值身上。如果逻辑运算符两边的值存在non-boolean值,将会出错,如:
  
  int test1 = 1;
[1] [2] [3] [4] [5] [6]
Tags:关键字:Java编程思想读书笔记(第5-7章)
责任编辑:glen