易截截图软件、单文件、免安装、纯绿色、仅160KB

Java中的数据比较(再谈==与equals的区别)

Java中的变量与对象有区别吗?
引子:变量与对象
变量是Java中最基本的存储单元,为变量赋值可以使用赋值表达式。如:
int i = 10;
该表达式的含义是将一个字面量(literal)10赋值给一个类型为int型的变量,变量名为i。这是一个为基本数据类型的变量赋值的例子,它表达了一个非常朴素的信息,那就是变量i的值为10。
那么这种赋值表达式引申到引用类型的变量时,其含义又有什么变化呢?再看一个赋值表达式:
String str = null;
该表达式的含义是将空内存地址(null)赋值给String类型的变量,变量名为str。朴素的说法是变量str的值为null。对于引用类型的变量而言,赋值操作只是将对象的内存地址保存到变量中。也就是说引用类型的变量值是对象的内存地址而不是对象的内容。如下例:
String str1 = "abc";
String str2 = new String("abc");
上述两种赋值操作本质上没有任何区别,最大的区别是生成对象的方法不同(这一点与赋值操作无关)。对于变量而言,其值仍然是所指对象的内存地址。
相对于变量,对象也是存储单元的一种。对象有自己的属性与方法,其内容的表现形式由实例化该对象所用的类决定。如:
new java.sql.Time(0L);
要使用对象,必须将对象的内存地址指定到一个引用类型的变量中(也就是变量的赋值操作)。该变量的类型可以与对象的类型一致,或者是对象类型的父类,或者是对象类型实现的接口。后两种是典型的多态应用。如:
java.util.Date date = new java.sql.Time(0L);
当然,我们只能通过变量去调用对象的方法或者设置对象的属性,其作用无非两种:取得或者修改对象的内容。如:
java.util.Date date = new java.sql.Time(0L);
date.setTime(3600000L);
System.out.println(date.toString());
注意,变量的内涵只有一个,就是它的值。我们通过变量调用对象的方法时,可以改变的也只是对象的内容。记住:
变量的值只能通过赋值表达式来改变;对象的内容只能通过自身的方法或属性来改变。
区分变量与对象是很有必要的,当我们讨论变量时总是与它们的值有关;当我们讨论对象时更多的是在讨论如何取得或修改它们的内容。
变量值的比较
当我们讨论变量之间是否相等时,通常使用“==”关系运算符。如:
int i = 10;
int j = 20;
if (i == j) {
    System.out.println("两个变量的值相等");
}
上例是基本数据类型之间的比较,本质上是变量之间值的比较。对于两个引用变量的比较,


相关文档:

Beginning Java AWT and Swing in NetBeans

一、性能问题
随着Java 6对于Swing性能的改进,Swing的运行速度已经开始得到了大大的提高,看看NetBeans就知道了,NetBeans就是Swing开发的,如果你跑Swing很慢,很耗资源,那么应该从自己的程序上找找问题,推荐使用NetBeans自带的Profile查找原因,教程在这里 – Profile Introduce.
二、LookAndFeel
用Swing做企 ......

Java正则表达式(总结一)

1.正则表达式结构简介:
小知识:{} 定义了一个范围  [] 定义了一个字符类 () 定义了一个组
*前面出现0次以上   + 前面匹配一次以上 ?前面出现0次或一次
1).字符:
x------字符x
\\-----反斜杠
\0n----十进制数 (0 <= n <= 7)
\0nn---十进制数0nn (0 <= n <= 7)
\0mnn--十进制数 ......

java clone

java clone
文章分类:Java编程 关键字: java clone
1.java里的clone分为:
A:浅复制(浅克隆): 浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。
b:深复制(深克隆):深复制把要复制的对象所引用的对象都复制了一遍。
Java中对象的克隆,为了获取对象的一份拷贝,我们可以利用Object类的clone()方法。必须要 ......

Java程序的问题

这是一段我参考的Java程序字段,已经调试可以通Eclipse运行了,代码有点看不懂,哪位高手可以帮我做个中文注释?谢谢啦~~
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import ja ......

给JAVA新手的一封信

亲爱的 Java 新手们:
很高兴你们愿意来这里共同学习,
Java 这个语言,已经不再是语言了,他勾勒出一个开放式的开发环境,
基本上 java.sum.com 很粗略地把 Java 分为三个部分:
(1)  J2SE ( Java 2 Standard Edition )
(2)  J2EE ( Java 2 Enterprise Edition )
(3)  J2ME ( Java 2 Micro Edition ) ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号