1、分清变量是值类型还是引用类型。 如int是值类型,一般自定义的Class是引用类型。String的行为和值类型类似。
值类型变量,在栈中存值。引用类型变量,在堆中存值,在栈中存这个堆的地址。 即,变量都是通过栈存储的,值类型在栈中直接存值,引用类型在栈中存的是堆的地址。
2、不加限定符的参数传递(值传递)
这种情况下是值传递,即对于值类型,传入的是值,在函数中改变这个变量,不影响函数外的传入变量的值。对于引用类型,如果改变传入的引用类型变量指向的堆里的内容...