设计一个表示用户的User类,类中的变量有用户名、口令和记录用户个数的变量,定义类的3个构造方法(无参、为用户名赋值、为用户名和口令赋值)、获取和设置口令的方法和返回类信息的方法。
时间: 2023-06-11 17:08:26 浏览: 126
下面是一个可能的User类的实现:
```java
public class User {
private String username;
private String password;
private static int userCount = 0;
public User() {
userCount++;
}
public User(String username) {
this.username = username;
userCount++;
}
public User(String username, String password) {
this.username = username;
this.password = password;
userCount++;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public static int getUserCount() {
return userCount;
}
public String getInfo() {
return "User: username=" + username + ", password=" + password;
}
}
```
这个类中有三个构造方法,分别用于创建一个空User对象、使用给定的用户名创建一个User对象以及使用给定的用户名和口令创建一个User对象。其中,无参构造方法和带一个用户名的构造方法只是简单地设置用户名,而带用户名和口令的构造方法则同时设置了用户名和口令。
类中还有获取和设置口令的方法,以及一个返回类信息的方法getInfo(),用于返回包含用户名和口令的字符串。
此外,类中还有一个静态变量userCount,用于记录创建的User对象的数量。每当创建一个User对象时,userCount就会增加1。getUserCount()方法用于获取当前User对象的数量。
使用示例:
```java
public class Main {
public static void main(String[] args) {
User user1 = new User();
User user2 = new User("Alice");
User user3 = new User("Bob", "password123");
System.out.println(user1.getInfo()); // User: username=null, password=null
System.out.println(user2.getInfo()); // User: username=Alice, password=null
System.out.println(user3.getInfo()); // User: username=Bob, password=password123
user1.setUsername("Charlie");
user1.setPassword("qwerty");
System.out.println(user1.getInfo()); // User: username=Charlie, password=qwerty
System.out.println(User.getUserCount()); // 3
}
}
```