Java中的封装介绍及使用方法
封装是面向对象思想中的三大特性之一,它指的是将一个对象的属性和方法组合成一个有机的整体,并尽可能地隐藏内部细节,从而实现对外提供接口,使得对象更加安全、稳定和易于使用。
在Java中,封装通常建立在以下几个关键字上:public、private、protected以及default(缺省)。
public关键字
public关键字是Java中最常见的访问修饰符,它可以将类、成员变量、方法等“公开”给其他类或程序访问,是最宽松的一种访问权限。
例如,我们可以定义一个public方法getX(),使得其他类可以获取当前对象的x属性值。
public int getX() {
return x;
}
private关键字
private关键字则是最严格的访问修饰符,它只能在当前类中被访问,外部的类和程序无法访问到它。
例如,我们可以定义一个private方法isLegal(),它只能在当前类中被使用,外部无法调用它。
private boolean isLegal(String idCard) {
// 校验身份证号是否合法
// ...
}
protected关键字
protected关键字和private关键字类似,也是只能在当前类中和当前类的子类中被访问,但它在外部程序中也可以通过子类的对象进行访问。
例如,我们可以定义一个protected成员变量name,它只能在当前类和子类中被访问。
protected String name;
default关键字
default关键字也叫缺省访问级别,它表示当前成员变量或方法没有指定任何访问修饰符,只能在同一包内被访问。
例如,我们可以定义一个默认的无参构造函数,它只能在同一包内的其他类中被访问。
Person() {
// 默认的无参构造函数
}
封装的示例
以下是一个封装的示例,定义了一个Person类,包含姓名、年龄和身份证号三个属性,并提供了相应的getter和setter方法。
public class Person {
private String name;
private int age;
private String idCard;
public Person(String name, int age, String idCard) {
this.name = name;
this.age = age;
this.idCard = idCard;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getIdCard() {
return idCard;
}
public void setIdCard(String idCard) {
this.idCard = idCard;
}
}
在另一个类中,我们可以创建一个Person对象,并通过getter和setter方法访问它的属性。
public class Main {
public static void main(String[] args) {
Person person = new Person("张三", 20, "110101199001011234");
System.out.println(person.getName()); // 输出:张三
System.out.println(person.getAge()); // 输出:20
person.setAge(21);
System.out.println(person.getAge()); // 输出:21
}
}
以上就是Java中封装的介绍及使用方法的完整攻略,希望对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java 中的封装介绍及使用方法 - Python技术站