java空指针异常



public class UserServiceImpl implements UserService {
        private static UserDaoMysqlImpl user ;
        public void setUser( UserDaoMysqlImpl User) {
             this.user = user;
       }

       public static void main(String[] args) {
            UserServiceImpl c = new UserServiceImpl();
            c.setUser(new UserDaoMysqlImpl());
            System.out.println(user);
      }

}






public class UserServiceImpl implements UserService {
        private static UserDaoMysqlImpl user ;
        public void setUser( UserDaoMysqlImpl user) {
             this.user = user;
       }

       public static void main(String[] args) {
            UserServiceImpl c = new UserServiceImpl();
            c.setUser(new UserDaoMysqlImpl());
            System.out.println(user);
      }

}


注意:   第一个输出的是null

              第二个输出的是cn.dao.impl.UserDaoMysqlImpl@15db9742


            因为第一个setUser方法的参数是User,并不是类的属性那个user,所以方法中的赋值时没有作用,等于是自己对自己的赋值,所以是空指针异常。







你可能感兴趣的:(java空指针异常)