Java 编写一个小程序,包名:com.kezhi,类Person 包含四个字段(name,age,salary) 满足以下条件: 1.不能随便查看人的年龄,工资等隐私 2.对设置的年龄进行合理的验证,年龄合理就设置,否则给默认年龄,必须在1-120 3.name的长度在2-6字符之间
时间: 2024-02-13 13:05:02 浏览: 54
好的,以下是 Java 编写的符合您要求的程序:
```java
package com.kezhi;
public class Person {
private String name;
private int age;
private double salary;
public Person(String name, int age, double salary) {
setName(name);
setAge(age);
setSalary(salary);
}
public String getName() {
return name;
}
public void setName(String name) {
if (name.length() >= 2 && name.length() <= 6) {
this.name = name;
} else {
System.out.println("Name length should be between 2 and 6 characters.");
}
}
public int getAge() {
return age;
}
public void setAge(int age) {
if (age >= 1 && age <= 120) {
this.age = age;
} else {
System.out.println("Age should be between 1 and 120.");
this.age = 18; // default age
}
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
}
```
这个程序定义了一个 `Person` 类,包含三个私有字段 `name`、`age` 和 `salary`,以及一个公共构造函数和三个公共方法 `getName`、`getAge` 和 `getSalary` 用于获取字段值,以及三个公共方法 `setName`、`setAge` 和 `setSalary` 用于设置字段值。其中:
- `name` 字段通过 `setName` 方法进行设置,该方法会检查传入的 `name` 是否长度在 2-6 字符之间,若不是则输出错误信息。
- `age` 字段通过 `setAge` 方法进行设置,该方法会检查传入的 `age` 是否在 1-120 之间,若不是则输出错误信息,并将其设置为默认年龄 18。
- `salary` 字段通过 `setSalary` 方法进行设置,不作特殊处理。
这样,通过上述的程序,我们就实现了对 Person 类中各字段的访问控制和合理性检查。
阅读全文