Java Person 类:属性、构造函数、toString 方法和 Setter/Getter 方法
public class Person {
private String name;
private int age;
private boolean gender;
private int id;
public Person() {
System.out.println('This is constructor');
System.out.println('name=' + name + ', age=' + age + ', gender=' + gender + ', id=' + id);
}
public Person(String name, int age, boolean gender) {
this.name = name;
this.age = age;
this.gender = gender;
}
@Override
public String toString() {
return 'Person [name=' + name + ', age=' + age + ', gender=' + gender + ', id=' + id + ']';
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public boolean isGender() {
return gender;
}
public void setGender(boolean gender) {
this.gender = gender;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
Person[] persons = new Person[n];
for (int i = 0; i < n; i++) {
String name = scanner.next();
int age = scanner.nextInt();
boolean gender = scanner.nextBoolean();
persons[i] = new Person(name, age, gender);
}
for (int i = n - 1; i >= 0; i--) {
System.out.println(persons[i].toString());
}
Person person = new Person();
System.out.println(person.toString());
}
}
代码解析:
-
Person 类定义:
- 包含四个私有属性:
name、age、gender和id。 - 实现了无参构造函数,打印构造函数信息和属性默认值。
- 实现了有参构造函数,接受
name、age和gender参数进行赋值。 - 重写了
toString()方法,按照指定格式输出 Person 对象信息。 - 为每个属性定义了 getter 和 setter 方法。
- 包含四个私有属性:
-
main 方法:
- 从控制台读取要创建的对象数量
n。 - 使用循环读取
n个 Person 对象的name、age和gender信息,并使用有参构造函数创建 Person 对象。 - 逆序输出创建的所有 Person 对象。
- 使用无参构造函数创建一个 Person 对象,并打印该对象信息。
- 从控制台读取要创建的对象数量
使用方法:
- 将代码保存为
Person.java文件。 - 编译代码:
javac Person.java - 运行代码:
java Person
程序将会提示您输入要创建的对象数量,然后输入每个对象的 name、age 和 gender 信息。最后程序会输出创建的所有 Person 对象信息,并输出使用无参构造函数创建的 Person 对象信息。
提示:
- 可以根据需要添加其他属性和方法到 Person 类中。
- 可以使用 IDE(如 Eclipse)自动生成 getter 和 setter 方法。
- 可以将 Person 类应用于其他 Java 项目中,以处理人员相关的信息。
原文地址: https://www.cveoy.top/t/topic/o9xm 著作权归作者所有。请勿转载和采集!