变量及其传递

来源:互联网 发布:怎么看淘宝注册的时间 编辑:程序博客网 时间:2024/06/06 05:08

1.变量类型(内存空间):
基本类型
引用型
例:

public class MyDate {    int year;    int month;    int day;    public MyDate(int year, int month, int day){        this.year = year;        this.month = month;        this.day = day;    }     void addYear(){        year++;         }    public void display(){        System.out.println(year + "-" + month + "-" + day);    }    public static void main(String args[])    {        MyDate m = new MyDate(2004, 9, 22);        MyDate n = m;        n.addYear();        m.display();        n.display();            } }只复制引用,操纵的同一个对象

2.字段变量和局部变量 区别
(1)定义:
类中;方法中的变量
(2)内存中:
对象的一部分,堆中;存在栈中
(3)初始化:
可自动赋值;显示赋值
(4)语法:
可被public,private, static,final修饰;不能被访问控制符及static修饰
都可以被final修饰

例:

class Test(){    int a;//自动赋值为0    void fun(){        int b;        System.out.println(b);//无法通过,需要赋初值    }}

3.传递
Java是值传递,复制;对于引用型变量,传递值是引用值,不复制对象实体。

 public class TransByValue {     public static void main (String[] args) {         int a = 0;         modify (a); System.out.println(a);//result:0 值传递         int [] b = new int [1];         modify(b);         System.out.println(b[0]); //result:1 引用类型     }     public static void modify (int a) {        a++;     }     public static void modify (int[] b) {        b[0] ++;        b = new int[5];     } }

4.返回类型
基本类型
引用类型

原创粉丝点击