java封装属性包括get,set,姓名,年龄,性别
时间: 2024-10-20 20:05:25 浏览: 70
在Java中,封装是面向对象编程的一个核心特性,它允许我们将数据(如姓名、年龄和性别)隐藏起来,并通过公共的方法(如get和set方法)来访问和修改这些数据。这样做的好处是可以控制数据的访问,防止不合理的直接操作导致数据错误。
**1. 创建Student类示例:**
```java
// 假设有一个Student类,包含了姓名(name)和年龄(age)属性
public class Student extends Person { // 继承自Person类
private int id;
private String name;
// 使用get和set方法访问和修改id和name
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public void print() {
System.out.println("Student: Name - " + name + ", Age - Not Specified");
}
}
// 在Application类中使用Student类
public class Application {
public static void main(String[] args) {
Student s1 = new Student();
s1.setId(20203251);
s1.setName("张三");
// 通过get方法获取属性值
System.out.println("ID: " + s1.getId());
System.out.println("Name: " + s1.getName());
// 调用print方法展示学生信息,由于age未设置,这里不会显示
s1.print();
}
}
```
**相关问题--:**
1. 为什么要在Java中使用get和set方法而非直接访问属性?
2. 如何实现私有变量,只允许通过getter和setter方法访问?
3. 如果Student类还有其他属性,如何避免重复编写get和set方法?
阅读全文