作业题代码报错
部门类
package com.imooc.model;
public class Department {
private String departmentName;
private String departmentNo;//
public Department()
{
}
public Department(String departmentName,String departmentNo)
{
}
public String getDepartmentName() {
return departmentName;
}
public void setDepartmentName(String departmentName) {
this.departmentName = departmentName;
}
public String getDepartmentNo() {
return departmentNo;
}
public void setDepartmentNo(String departmentNo) {
this.departmentNo = departmentNo;
}
}职务类
package com.imooc.model;
public class Post {
private String name;
private String postNo;//工号
public Post()
{
}
public Post(String name,String postNo)
{
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPostNo() {
return postNo;
}
public void setPostNo(String postNo) {
this.postNo = postNo;
}
}员工类
package com.imooc.model;
public class Staff {
private int name;
private int age;
private String sex;
private String staffNo;
private Post myPost;
private Department myDepartment;
public Staff() {
}
public Staff(String name,int age,String sex,String staffNo,String postName)
{
this.setAge(age);
this.setSex(sex);
this.setStaffNo(staffNo);
}
public String getStaffNo() {
return staffNo;
}
public void setStaffNo(String staffNo) {
this.staffNo = staffNo;
}
public int getName() {
return name;
}
public void setName(int name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
if (age >= 18 && age <= 65)
this.age = age;
else
this.age = 18;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
if (sex == "男" || sex == "女")
this.sex = sex;
else
this.sex = "男";
}
public Post getMyPost() {
return myPost;
}
public void setMyPost(Post myPost) {
this.myPost = myPost;
}
public Department getMyDepartment() {
return myDepartment;
}
public void setMyDepartment(Department myDepartment) {
this.myDepartment = myDepartment;
}
public String introduction() {
String str = "姓名" + this.getName() + "\n工号" + this.myPost.getPostNo()
+ "\n性别" + this.getSex() + "\n年龄" + this.getAge() + "\n职务"
+ this.myPost.getName();
return str;
}
}测试类
package com.imooc.test;
import com.imooc.model.*;
public class HomeworkTest {
/**
* @param args
*/
public static void main(String[] args) {
Staff one=new Staff("张铭",29,"男","S001","人事部经理");
System.out.println(one.introduction());
}
}报错“
Exception in thread "main" java.lang.NullPointerException
at com.imooc.model.Staff.introduction(Staff.java:81)
at com.imooc.test.HomeworkTest.main(HomeworkTest.java:10)
”
16
收起
正在回答 回答被采纳积分+1
2回答
Tender10
2018-05-09 10:16:00
1、Staff里的name参数是String类型的,你定义成了int类型,应该将对应的类型全部修改一下。
2、Department、Post 类里的有参构造方法没有调用set方法给属性进行赋值,应该完善有参构造方法。
3、Staff里的有参构造方法,可以
public Staff(String name,int age,String sex,String staffNo,Post mypost,Department myDepartment){},然后完成对应set赋值。
4、Test类中定义一个Post对象和Department对象,然后定义一个Staff对象,调用构造方法传入对应的值即可。
Android零基础入门2018版
- 参与学习 人
- 提交作业 5461 份
- 解答问题 7235 个
此次推出的专题为Android攻城狮培养计划的第一部分语法与界面基础篇,将带大家从0开始学习Android开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星