日期:2014-05-20  浏览次数:20802 次

android:Set报空指针异常
代码如下:
package com.happy;




import com.person.PersonBean;
import com.service.PersonService;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;


public class addActivity extends Activity {
private EditText name;
private EditText age;
private EditText phone;
private Button save;
private static final String TAG="addActivity";
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity00);
age=(EditText)findViewById(R.id.addActivity_age);
name=(EditText)findViewById(R.id.addActivity_name);
phone=(EditText)findViewById(R.id.addActivity_phone);
save=(Button)findViewById(R.id.save_but);
save.setOnClickListener(new SaveOnClickListener());

}
private class SaveOnClickListener implements OnClickListener{
PersonService service=new PersonService(addActivity.this);
private PersonBean person;

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String myName=name.getText().toString();

Log.i(TAG, myName);
int myAge=Integer.valueOf(age.getText().toString());
String myPhone=phone.getText().toString();
person.setName(myName);
person.setAge(myAge);
person.setPhone(myPhone);
service.save(person);
Toast.makeText(addActivity.this, "保存成功", 2000).show();


}


}
}
//报错如下:person.setName(myName);空指针
我在日志中查询到myName的结果可以获取,为什么set到personbean中会有空指针呢

------解决方案--------------------
private PersonBean person;这个你只声明了没有初始化,默认是null,所以你调person.setName(myName);
会错
------解决方案--------------------
那你觉得是不是你的person空指针呢?