声明一个people类 其中包括姓名年龄和性别
时间: 2024-01-03 16:01:24 浏览: 103
人类是一种具有姓名、年龄和性别等属性的生物。为了在计算机程序中表示人类,我们可以声明一个人类的类(Class)。
在人类类中,我们需要定义三个属性:姓名、年龄和性别。姓名通常是一个字符串类型的变量,用来表示人的名字;年龄可以是一个整数类型的变量,用来表示人的年龄;性别可以是一个字符串类型的变量,用来表示人的性别。
除了属性之外,人类类还可以包括一些方法,用来表示人类的一些行为或操作。例如,可以定义一个方法来输出人类对象的信息,包括姓名、年龄和性别等属性信息。
使用人类类,我们可以创建多个人类的对象,每个对象都可以具有不同的姓名、年龄和性别。通过调用对象的方法,我们可以获取或修改对象的属性值,以及执行一些相关的操作。
总结来说,声明一个人类类,可以包括姓名、年龄和性别等属性,并且可以定义一些相关的方法来表示人类的一些行为或操作。通过创建人类对象,我们可以操作和管理多个人的信息。这样设计的人类类可以很好地模拟现实生活中的人类。
相关问题
创建一个People类,包括姓名和年龄2个成员变量。创建3个People对象,将其添加到HashSet中,如果姓名相同则禁止添加.
好的,以下是实现这个要求的Java代码:
```java
import java.util.HashSet;
public class People {
private String name;
private int age;
public People(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof People)) return false;
People people = (People) o;
return getName().equals(people.getName());
}
@Override
public int hashCode() {
return getName().hashCode();
}
public static void main(String[] args) {
HashSet<People> peopleSet = new HashSet<>();
peopleSet.add(new People("Tom", 20));
peopleSet.add(new People("Jerry", 21));
peopleSet.add(new People("Tom", 22)); // 添加失败,因为姓名相同
System.out.println(peopleSet);
}
}
```
在上面的代码中,我们创建了一个People类,包含了姓名和年龄2个成员变量。同时,我们重写了equals()方法和hashCode()方法,以便在判断姓名是否相同时使用。
在main()方法中,我们创建了3个People对象,并将它们添加到HashSet中。第一个和第二个对象可以成功添加,但第三个对象因为姓名和第一个对象相同,所以添加失败。最终输出HashSet中的元素,只有两个People对象。
创建一个People类,包括姓名和年龄2个成员变量。创建3个People对象,将其添加到HashSet中,如果姓名相同。则禁止添加
好的,以下是实现代码:
```java
import java.util.HashSet;
public class People {
private String name;
private int age;
public People(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
@Override
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof People)) {
return false;
}
People p = (People) obj;
return this.name.equals(p.getName());
}
@Override
public int hashCode() {
return name.hashCode();
}
public static void main(String[] args) {
HashSet<People> set = new HashSet<>();
People p1 = new People("Tom", 20);
People p2 = new People("Jerry", 18);
People p3 = new People("Tom", 21);
set.add(p1);
set.add(p2);
set.add(p3);
for (People p : set) {
System.out.println(p.getName() + " " + p.getAge());
}
}
}
```
以上代码实现了一个People类,包括姓名和年龄2个成员变量,同时覆盖了equals()和hashCode()方法,以便将People对象添加到HashSet中时去重。在main()方法中创建了3个People对象,并将它们添加到HashSet中,其中p1和p3的姓名相同,但年龄不同,所以只有p1被添加到了HashSet中。最后输出HashSet中的元素,只有p1和p2被输出。
相关推荐
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)