🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: cn.bbs.comp.lang.java
Article #12531

Re: java�еĴ�ֵ�ʹ�����

#12531
From: 98CS~��è~�����Կ�����
Date: Tue, 27 Jul 2004 05:31
73 lines
4271 bytes
����˵�ġ�������ָ�������ʱ�IJ���

java���õ�ʱ��ѹ��ջ�ϵ���object�����õĸ�����

������Ҫ�õ�ַ�����͵Ļ�����������ģ�
Object a = new Object(...);
a�б������new�����Ķ���ĵ�ַ��
��ô�ڵ���func(a)��ʱ��
���ݸ�func�IJ�����a,����a��һ��copy.
���copy�б����Ҳ��new��������ĵ�ַ��

�����by reference����ô���ݸ�func()��Ӧ����a,
����a��copy. ���۴�aҲ�ã���a��copyҲ�ã�java
���ݵĸ�Ͳ���һ����ַ������һ�������ǵ�ַ�Ķ���
��д���Ǹ�C��Դ�������û��дint* p,����д��int p,
����Ϊ��˵�������

java�Զ���IJ�����ȷ�����ò��������Ǻ����
ȴ�ǰ���by value���ġ�

Java In a Nutshell:
Java manipulates objects 'by reference,' but it passes object references 
to methods 'by value.'" As a result, you cannot write a standard swap 
method to swap objects. 

Java Q&A:
Q: If Java uses the pass-by reference, why won't a swap function work? 

A: Your question demonstrates a common error made by Java language newcomers. 
Indeed, even seasoned veterans find it difficult to keep the terms straight. 

Java does manipulate objects by reference, and all object variables are 
references. However, Java doesn't pass method arguments by reference; it
 passes them by value. 

Take the badSwap() method for example: 

public void badSwap(int var1, int var2)

{

  int temp = var1;

  var1 = var2;

  var2 = temp;

}

When badSwap() returns, the variables passed as arguments will still hol
d their original values. The method will also fail if we change the argu
ments type from int to Object, since Java passes object references by va
lue as well.


�� �� nue.bbs@bbs.sjtu.edu.cn (NUE) �Ĵ������ᵽ: ��
: �ҵ�Ȼ֪��ʲô�Dz���ѹջ��
: �����������ڽ���ν�IJ���ѹջ��ȫ���Ѿ���Ϊjava�IJ����Ǵ�ֵ������£�����Ϊѹ
: ��ջ�ϵ���object�ĸ��������ǵ�ַ��
: btw,��Ҫ��������˵����ʲô����������ô�������ܲ��ʲô�������������͡�
: �� �� xeon.bbs@bbs.nankai.edu.cn (98CS~��è~�����Կ�����) �Ĵ�����
: �ᵽ: ��: ��������������ʱ��δ��ݲ���û�㶮��
: : ������ѹջ��ʲô��˼�㶼��������Ҳû��
: : ���������������ı�Ҫ�ˡ�


--
       �q^�r�q^�r                                               
          @  *                                                  
       ��  ��  ��                  ÿ�������ҵ�С����ȥɢ��     
           ��                      ����һ��һ��Ĺ�ȥ��         
                                   �����piggy��� ̫�äƤ���   
�� ��Դ:���Ұ��Ͽ�վ nkbbs.org��[FROM: 202.108.245.163] 
Technical Details
Message-ID: <4DOBCk$9yV@bbs.nankai.edu.cn>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news.glorb.com!news.moat.net!ctu-peer!news.nctu.edu.tw!netnews.csie.nctu.edu.tw!maily.cic.tsinghua.edu.cn!news2.happynet.org!NanKai

Show Full Headers
Complete Article Headers
X-Google-Thread: f6cb0,a1251c832f18f12d
X-Google-Attributes: gidf6cb0,public
X-Google-Language: Chinese,GB
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news.glorb.com!news.moat.net!ctu-peer!news.nctu.edu.tw!netnews.csie.nctu.edu.tw!maily.cic.tsinghua.edu.cn!news2.happynet.org!NanKai
From: xeon.bbs@bbs.nankai.edu.cn (98CS~��è~�����Կ�����)
Newsgroups: cn.bbs.comp.lang.java
Subject: Re: java�еĴ�ֵ�ʹ�����
Date: 27 Jul 2004 05:31:14 GMT
Organization: �Ұ��Ͽ�վ
Message-ID: <4DOBCk$9yV@bbs.nankai.edu.cn>
X-Filename: Java/M.1090905454.A