首页 > 技术文章 > JAVA面向对象 - 封装

beekc 2020-02-17 02:01 原文

抽象

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

 

修饰符

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

Ⅰ.公开级别:用pubilc修饰,对外公开

Ⅱ.受保护级别:用protected修饰,对子类和同一个包中的类公开

Ⅲ.默认级别:没有修饰符号,向同一个包的类公开

Ⅳ.私有级别:用private修饰,只有类本身可以访问,不对外公开

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

 

 

 

 

 

 

 

封装

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

 好处:
  Ⅰ.将变化隔离
  Ⅱ.便于使用
  Ⅲ.提高重用性
  Ⅳ.提高安全性
封装原则:
  Ⅰ.将不需要对外提供的内容都隐藏起来
  Ⅱ.把属性都,提供公共方法对其访问

 注意:私有仅仅是封装的一种体现而已

 1 public class C {
 2     public static void main(String[] args){
 3         Clerk clerk1 = new Clerk("小花",22,4500.57f);
 4         System.out.println("名字是:" + clerk1.name + "\n年龄:" + clerk1.getAge() + "\n薪水:" + clerk1.getSalary());
 5     }
 6 }
 7 
 8 //职员
 9 class Clerk{
10    public String name;
11 
12    //用private封装起来变成私有的
13    private int age;
14    private float salary; //薪水
15 
16     public Clerk(String name, int age ,float salary)
17     {
18         this.name = name;
19         this.age = age;
20         this.salary = salary;
21     }
22     //通过一个成员方法去控制和访问私有的属性
23     public int getAge()
24     {
25         return this.age;
26     }
27     public float getSalary()
28     {
29         return this.salary;
30     }
31 
32 }

 

运行结果

推荐阅读