Osheep

时光不回头,当下最重要。

Java面向对象编程的四大特征(1)-抽象和封装

1.抽象

简单理解

我们在定义一个类时候,实际上就是把一类事物的共有的属性和行为提取出来,形成一个物理模型(模版)。这种研究问题的方法称为抽象。

2.封装

《Java面向对象编程的四大特征(1)-抽象和封装》

什么是封装

封装就是把抽象出来的数据和对数据的操作封装在一起,数据被保护在内部,程序的其它部分只有通过被授权的操作(成员方法),才能对数据进行操作。

例如,电视机的开关,对音量,颜色,频道的控制是公开的,谁都可以操作,但是对机箱后盖,主机板的操作却不是公开的,一般是由专业维修人员来玩。

那么java中如何实现这种类似的控制呢?如下封装案例[Demo116.java],人的年龄,工资等隐私信息不能直接查看到,,而要通过相应的成员方法才能查看到,这就体现了程序设计的封装.

//封装案例[Demo116.java]
public class Demo116{
    public static void main(String []args){
        //创建一个职员
        Clerk clerk1=new Clerk("小花",24,4567.6f);
        System.out.println("名字是"+clerk1.name+"薪水"+clerk1.getSal());
    }
}
//职员
class Clerk{
    public String name;
    //private私有的,public公有的
    private int age;
    private float salary;

    public Clerk(String name,int age,float sal){
        this.name=name;
        this.age=age;
        this.salary=sal;
    }
    //通过一个成员方法去控制和访问私有的属性
    public float getSal(){
        return this.salary;
    }
}

封装–访问控制修饰符

Java提供四种访问控制修饰符号控制方法和变量的访问权限:

1、公开级别:用public修饰,对外公开
2、受保护级别:用protected修饰,对子类和同一个包中的类公开
3、默认级别:没有修饰符号,向同一个包的类公开
4、私有级别:用private修饰,只有类本身可以访问,不对外公开

四种访问级别的具体访问范围如下表所示

访问级别 访问控制修饰符 同类 同包 子类 不同包
公 开 public
受保护 protected
默 认 没有修饰符
私 有 private
点赞