Article View: cn.bbs.comp.lang.java
Article #12337�Դ�ֵ�ʹ�����
From: The One
Date: Sun, 01 Aug 2004 14:40
Date: Sun, 01 Aug 2004 14:40
74 lines
7060 bytes
7060 bytes
��ǰ���һЩjava�ij������ߵ���ʵ�������·�ӣ���work���У�û����ϸ�о���
java���Ա���
���ʼ�ж�tij��һЩjava�鼮�����dz�ѧ�ߣ�Ȼ�����˴�ֵ�ʹ����������ѧ������
�����Ǹ�λ������������ʵ�ó�ѧ�����ˡ�����
��ʵ�����Ǹ����ֵ����⡣����
�����ڷ���һ�³�ѧ���ڱ�����ѧϰ����һЩ���ɹ�"����λ��������ָ���Ҿ�����
��Ƚ���Ч��
�����Բ���ݷ�ʽ����ֵ�ʹ����ã����������֪����������������Ķ�����ʲô��
��ֵ����primitive type��int��double�� ���ǰѱ����ֵѹջ������ڶ�������
�Ѷ����refѹջ����c�����У�
swap��Object a, Object b)��swap(Object* a, Object* b)Ч����һ��ģ�
����ʵ��Ҳ��һ��ģ����ǰѶ���ĵ�ַѹջ����java��û�е�ַ��ָ��ĸ��
�������ﶼ�ǹ���һ��ref�����������heap��Ȼ��Զ���IJ���������ͨ��ref
~����ref��pointer�ı��������ж�ô���� ref��pointer�����кܴ�ͬ��
��ref��ң�����������ڿ��ƣ�refָ��һ�������κ�ʱ�̣�ֻҪref����ָ��
��������㶼����ͨ��ref����������� ��pointerָ��ģ�����˵�Ƕ���
����˵��ʢ�Ŷ�����ڴ棬���Բ����п��Ƶĺ��壬
ֻ�Ƕ���ij��ʱ��״̬�ı�������������һ��ref��Ȼ��ָ��һ������
��ô�ڳ����е��κεط����ֵ�a���Ķ���ij�����ref���������java��ref������
�Ͷ����Ƿֿ��ģ���c�����в��ֿܷ���ԭ��ѡ�
Ȼ������������ͬ����ô�ٶ�����Ϊ����ݵ�ʱ����Ȼ���ݵ�Ҳ�����ref��
java��ref�IJ���ݲ��ô�ֵpass by value�ķ�ʽ������˵��ref����һ��primitive
type���ˣ�ʵ���ϲ�������������ֻ�ǰ�ref��ֵѹջ������Ϳ��Խ�ʾΪʲôjava
���ó��淽��д������֪��swap��
swap��T a, T b)
{
T temp = a;
a = b;
b = temp;
}
�����á������þ��ǰ���ĵ�ַѹջ��c��������Ͷ���ĵ�ַ���д�ֵ�Dz�ͬ�ġ�
�Ե�ַ���д�ֵ�������涨���swap(int* a,int *b)��
ֻ�ǰѱ���ĵ�ַѹջ��swap����ֻ�Ǹı�����ջ��ѹ���������ʱ����a��b��
�Ա���û��Ӱ�죬��ǰѵ�ַ��Ϊ���ʱ����;����{int temp =*a;*a=*b;*b =temp;}��
��swap(int& a, int& b)��Ҳ�ǰѱ���ĵ�ַѹջ��ʵ�֣�����ʵ�ֲ������
������� ��ַ�����壬swap��Ӱ�챾�壬��һ��˵ǰ�ߵģ����㶨���ڵ�ַ���?
����ߵģ����㶨���ڱ��塣
java�еĴ�����û��ʵ�֣����Ǵ�ỹҪ������
�������˵��java��java�е�swap(Object a, Object b)����ǰ����˵�ǰѶ����ref
�Դ�ֵ�ķ�ʽ���뷽����Ҳ����˵�����㶨����ref�����Ƕ����ڱ���ġ�
��ʹ���ǰ�ref���ͱ����ĵ�ַ���뷽�����ı��Ҳֻ��ref���ѣ�Ҳ���DZ��塣��Ȼ
ǰ��˵��java�����г��ֵĶ�����ref�����ԱϾ��ı�������Ϊ�����Ǻ������
���ʲ����ã�����java�Ŷ�refֻ���ô�ֵ(���˲²⣩.......(1��
�����javaҪʵ��c������������Ĵ����ã���ô����Ѷ���ĵ�ַ���룬���Ұ�����
�����ڶ����?��������java�Ѿ�������,������ڰ�ȫ����ijЩ���ǣ��ܿ���ref��
��ʵ������Ĵ����ã��ƺ�����Щ���ˣ���Ϊ������������ַ������۴�����
���?����ҵ�ںţ�������һ���õ�ѡ������javaû��ʵ�ִ����� .......(2)
�ܽ�һ�¡�
�Ϳ���˵ JAVA���������ref��ͨ��ref�����������еĶ���Ҳ��ref����ʽ���֡�
�ɴ�
��(1)���Կ������java��ref����c��������Ĵ����ã���swap(T& a, T&b)��ô�ı��
����refָ��Ķ����ǵ�ǰrefָ��Ķ����壩��������ʲ��ã���ֱ�ۣ�����
�������������棬�ʶ�ref���ô�ֵ��
�ɣ�2��java���ԶԱ���ʵ��c��������Ĵ����ã���ô�Ʊ������ַ�ĸ��
����ҲΥ����java��ref��Ϊ��������Ψһ�ֶεļٶ������ܻ�������ʲô����
��javaҲû����ô����
����javaֻ�в�ȡ��ref��ֵ����ΪΨһ��������Ȼjava���ʱ����������ܲ�������
�ģ���Ӧ�����������ϵ�ɡ�
--
�ⲻ��ǩ���Ҳ�Ҫǩ��
[m[1;35m�� ��Դ:������δ��վ bbs.pku.edu.cn��[FROM: 162.105.41.166][m
Technical Details
Message-ID:
<4DSJBS$AKL@bbs.pku.edu.cn>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news.glorb.com!border1.nntp.dca.giganews.com!nntp.giganews.com!ngpeer.news.aol.com!feed2.newsreader.com!newsreader.com!maily.cic.tsinghua.edu.cn!news.happynet.org!PKUShow Full Headers
Complete Article Headers
X-Google-Thread: f6cb0,1d36cbb9f89bb52e,start X-Google-Attributes: gidf6cb0,public X-Google-Language: Chinese,GB Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news.glorb.com!border1.nntp.dca.giganews.com!nntp.giganews.com!ngpeer.news.aol.com!feed2.newsreader.com!newsreader.com!maily.cic.tsinghua.edu.cn!news.happynet.org!PKU From: chinux@bbs.pku.edu.cn (The One) Newsgroups: cn.bbs.comp.lang.java Subject: �Դ�ֵ�ʹ����� Date: 01 Aug 2004 14:40:45 GMT Organization: ����δ��վ Message-ID: <4DSJBS$AKL@bbs.pku.edu.cn> Mime-Version: 1.0 Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: 8bit X-Filename: Java/M.1091366188.A