MainActivity如下:

package cn.testchangevar;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.app.Activity;/** * Demo描述: * Java中的传值及其改变 * */public class MainActivity extends Activity {private int id=7;private Person mPerson;    private Button mButton;    private String mString;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);init();}   private void init(){    mString=new String("OOOOO");    mPerson=new Person("xx", 22);    mButton=(Button) findViewById(R.id.button);    mButton.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View view) {System.out.println("111 id="+id);System.out.println("111 mString="+mString);System.out.println("111 mPerson.getAge()="+mPerson.getAge());System.out.println("=========================");Util.change(id);Util.change(mString);Util.change(mPerson);System.out.println("=========================");System.out.println("222 id="+id);System.out.println("222 mString="+mString);System.out.println("222 mPerson.getAge()="+mPerson.getAge());}});   }}


Util如下:

package cn.testchangevar;public class Util {   //不可以改变.因为int属于基础类型   public static void change(int i){   i=9527;   System.out.println("has been changed i="+i);   }     //可以改变.传递的是对象   public static void change(Person person){   person.setAge(88);   System.out.println("has been changed string="+person);   }      //不可以改变.虽然String也是对象,但是较为特殊   public static void change(String string){   string="XXXXX";   System.out.println("has been changed string="+string);   }}


Person如下:

package cn.testchangevar;public class Person {    private String name;    private int age;public Person(String name, int age) {super();this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "Person [name=" + name + ", age=" + age + "]";}}


main.xml如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"     >    <Button        android:id="@+id/button"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="@string/hello_world"        android:layout_centerInParent="true"    /></RelativeLayout>


更多相关文章

  1. Android(安卓)封装http请求的工具类
  2. 改变android 选项卡的背景色
  3. Android开关机代码
  4. android studio中rendering problems解决方法
  5. android 一个activity调用另一个activity,窗口化显示
  6. Android自动化工具Monkeyrunner使用(六) —— 根据ID查找对象
  7. 高德地图自定义Marker点击时出现的InfoWindow
  8. android键盘事件
  9. Android配置打包名称

随机推荐

  1. ADT转AndroidStudio建议
  2. Android学习记录1
  3. Android(安卓)IPC入门——AIDL
  4. 『转』Android(安卓)多个UI库及组件资源
  5. android 通过Intent使用Bundle传递对象
  6. 【android开发记录片】2.基于Eclipse的JN
  7. Android模拟器环境中添加和删除apk应用程
  8. Rexsee API介绍:Android(安卓)WakeLock进
  9. Android(安卓)OpenGL ES(一)开发入门
  10. Android流量统计TrafficStats类的使用