Java数据类型和参数传递

来源:互联网 发布:迎乐软件科技有限公司 编辑:程序博客网 时间:2024/04/30 07:49

                         Java数据类型和参数传递

Java中,booleanbyteshortintlongcharfloatdouble这八种是基本数据类型,其余的都是引用类型

1.对于基本数据类型来说,java实现的是值传递,方法接收参数的值,但不能改变这些参数的值。

2.对于引用数据类型来说,java实现的仍是值传递,但引用数据类型里的值是对象的地址,所以方法中对数据的操作可以改变数据的值。

import java.io.*;

public class PassTest{

float ptValue;

 

public static void main(String args[]) {

int val;

PassTest pt=new PassTest();

val=11;

System.out.println("Original Int Value is:"+val);

pt.changeInt(val);               //值参数

System.out.println("Int Value after Change is:" +val); //值参数值的修改,没有影响值参数值

pt.ptValue=101f;

System.out.println("Original ptValue is:"+pt.ptValue);

pt.changeObjValue(pt);                            //引用类型的参数

System.out.println("ptValue after Change is:"+pt.ptValue);//引用参数值的修改,改变参数值

}

 

 public void changeInt(int value){

  value=55;                           //在方法内部对值参数进行了修改

 }

 

 public void changeObjValue(PassTest ref){

  ref.ptValue=99f;                        //在方法内部对引用参数进行了修改

 }

}

3当我们声明一个引用类型变量时,系统只为该变量分配了引用空间,并未创建一个具体的对象;当用new为对象分配空间后,将对象的引用赋值给引用变量。

4.数组

基本数据类型一维数组内存分配

num=null,相当于切断了和对象之间的关系。那它的对象就成为了一个垃圾内存。

  

对象数组的内存分配