看一下,是否有优化空间

来源:1-13 编程练习

henghu

2019-06-09 14:08:29

public class User {
	// 定义属性用户名、密码
	private String user;
	private String password;

	// 设置用户名的set方法
	public void setUser(String user) {
		this.user = user;
	}

	// 设置用户名的get方法
	public String getUser() {
		return user;
	}

	// 设置密码的set方法
	public void setPassword(String password) {
		this.password = password;
	}

	// 设置密码的get方法
	public String getPassword() {
		return password;
	}

}
public class Test {
	static String str1;

	// 测试方法
	public static void main(String[] args) {
		// 实例化对象,调用相关方法实现运行效果
		User one = new User();
		User two = new User();
		one.setUser("Lucy");
		one.setPassword("123456");

		two.setUser("Mike");
		two.setPassword("123456");

		UserManager checkUser = new UserManager();
		str1 = checkUser.checkUser(one, two);
		System.out.println(str1);
	}

}
public class UserManager {
	// 用户信息验证的方法
	String str = "";

	public String checkUser(User one, User two) {

		if (one.getUser() != null || two.getUser() != null) {
			if (one.getUser().equals(two.getUser())) {
				str = str + "用户名正确";
			} else {
				str = str + "用户名不正确";
			}
		} else {
			str = str + "用户名为空";
		}
		if (one.getPassword() != null || two.getPassword() != null) {
			if (one.getPassword().equals(two.getPassword())) {
				str = str + "密码正确";
			} else {
				str = str + "密码不正确";
			}
		} else {
			str = str + "密码为空";
		}
		return str;
	}

}

为什么在Texst类中,一定要加上static?

另外,代码是否有优化的空间?

写回答

1回答

好帮手慕小班

2019-06-09

同学你好,1、在Test类中,主方法是static修饰的方法,在静态方法中只能调用同级的静态变量,所以必须加static修饰的变量,来调用方法外面的成员变量,也可以直接通过局部变量来接收

http://img.mukewang.com/climg/5cfced8f0001077f08470461.jpg

2、同学的代码运行是没有问题的哦!同学可以在User类中添加无参和有参的构造方法,在测试类中通过有参构造直接赋值哦!

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

0

0 学习 · 11489 问题

查看课程