老师 程序是对的 但是写的过程中 有几个点修改只是因为不会报错 不太明白背后的逻辑..

老师 程序是对的 但是写的过程中 有几个点修改只是因为不会报错 不太明白背后的逻辑..

public class User {
private String username;
private String code;
public String getUsername() {
	return username;
}
public void setUsername(String username) {
	this.username = username;
}
public String getCode() {
	return code;
}
public void setCode(String code) {
	this.code = code;
}
}

public class UserManager {
	public String checkUser(User one, User two){ 
		  if((one.getUsername()==null)|(two.getUsername()==null)) {
			 System.out.println("用户名为空");
		  }
		  if((one.getCode()==null)|(two.getCode()==null)){
			 System.out.println("密码为空");
		  }
		  if(one.getUsername()==two.getUsername()) {
			 System.out.println("用户名一致");
			 }else {
			 System.out.println("用户名不一致"); 
			 }
		  if(one.getCode()==two.getCode()) {
			 System.out.println("密码一致");
			 }else {
			 System.out.println("密码不一致"); 
			 } 
		return null;	
	}
}

public class Test {
public static void main(String[] args) {
User a=new User();User b=new User();
a.setUsername("Lucy");
System.out.println("用户名:"+a.getUsername());
a.setCode("123456");
System.out.println("密码:"+a.getCode());
System.out.println("========================");
b.setUsername("Mike");
System.out.println("用户名:"+b.getUsername());
b.setCode("123456");
System.out.println("密码:"+b.getCode());
UserManager ss=new UserManager();
ss.checkUser(a, b);
}
}

为什么User one, User two可以直接调用set/get方法不用创建对象?以及UserManager为什么return null时不会报错?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕小班 2019-05-08 18:56:23

同学你好,在没有写Test类的 User a=new User();时候 one.set/get方法是不报错的,是因为没有语法错误,所以编译能通过,但是这时是没有值的,运行就会报错。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

好帮手慕小班 2019-05-08 14:32:45

同学你好, one,two已经是对象了,在主方法里已经创建过了,所以能直接调用。

http://img1.sycdn.imooc.com//climg/5cd278040001dd7905000270.jpg

return  null;不报错的原因是:null表示的是一个值,只是这个值还没有指向任何的内存空间,所以这是有返回值的,符合语法规则,不报错哦!

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

  • 提问者 慕标7429059 #1
    在没有写Test类的 User a=new User();时候 one.set/get方法也是不报错的 是因为什么呢?
    2019-05-08 18:08:46
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师