封装
(1)封装的概述
- 是指隐藏对象的属性和实现细节,仅对外提供公共访问方式;
- 封装原则:
将不需要对外提供的内容都隐藏起来;
把属性隐藏,提供公共方法对其访问;
(2)private关键字
- private是一个权限修饰符(私有的);
- 可以修饰成员(包括成员变量和成员方法);
- 被其修饰的成员只能在本类中被访问;
- 应用场景:把成员变量用private修饰,提供对应的getXxx()和setXxx()方法;
class Deme{
private int num=100;
public void show(){
System.out.println(num);
}
private void method(){
System.out.println("你好!");
}
public void function(){
method();
}
}
class PrivateDemo{
public static void main(String[] args){
Demo d = new Demo();
//不能方法私有的成员变量
//System.out.println(d.num);报错提示:num在Demo中是private访问控制
//不能访问私有的成员方法
//d.method();报错提示:method()在Demo中是private访问控制
//仅能用公共的访问方式
d.show();
d.function();
}
}
(3)this关键字
- this:代表所在类的对象引用;
- 方法被哪个对象调用,this就代表哪个对象;
- 应用场景:
解决局部变量隐藏成员变量;
class Student{
private String name;
private int age;
public String getName(){
return name;//这里其实隐含了this
}
public void setName(String name){
this.name=name;
}
public int getAge(){
return age;
}
public void setAge(int age){
this.age=age;
}
}