JAVA菜鸟入门篇 - 封装/隐藏、java访问控制符 (十七)

面向对象的三大特征:
    - 封装(Encapsulation)
    - 继承(Inheritance)
    - 多态(Polymorphism)


类和对象是面向对象方法的核心概念:
    -  类:是对某一事物的描述,是抽象(抽出象的部分)的,概念上的;类描述了对象的属性,行为(方法,函数);
    -  对象:是实际存在的该类事物的某一个个体,因而也成为实例(instance);
   一个类可以产生多个对象;面向对象的重点是类的设计;


一、面向对象之——封装/隐藏


    为什么需要封装?封装的作用和含义?


    我要看电视,只需要按一下开关和换台就可以了。有必要了解电视机内部的结构吗?有必要触摸显像管吗?
    我要开车,有必须需要了解汽车的构造原理吗?


    封装:顾名思义,隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别;将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”,其中数据和函数都是类的成员。


    封装的目的:隐藏对象内部的复杂性,只对外公开简单的接口。增强安全性和简化编程,使用者不必了解具体的实现细节,而只是要通过 外部接口,一特定的访问权限来使用类的成员。 便于外界调用,从而提高系统的可扩展性、可维护性。


    封装的大致原则:


     1、把尽可能多的东西藏起来.对外提供简捷的接口. 
     2、把所有的属性藏起来. 

     3、封装好处:将操作隔离;便于使用;提高重用性;安全性。


     我们程序设计要追求:”高内聚,低耦合“//比如苹果手机的设计,只有一个按钮
     高内聚:类的内部数据操作细节自己完成,不允许外部干涉
     低耦合:仅暴露少量的方法给外部使用。


二、使用访问控制符,实现封装:


     java的访问控制符分为两类:类的访问控制符,属性和方法的访问控制符。

     1. 类的访问控制符有两种:public, default(默认的,什么都不用写)


   public修饰类时,文件名必须与被public修饰的类名一致
          default就是包内访问控制符。
          当然对于内部类还可以有static修饰,而用static修饰的内部类叫作嵌套类。

     2. 属性和方法的访问控制符有四种:private, default, protected, public

          可以用如下的表描述:(*表示可访问,空表示不可访问)


     封装要点:

     类的属性的处理:
1.一般使用private。(除非本属性确定会让子类继承)
2.提供相应的get/set方法来访问相关属性。这些方法通常是public,从未提供对属性的读取操作。

      (注意:boolean变量的get方法是用:is开头!)
     类的方法的处理:

1.一些只用于本类的辅助性方法可以用private修饰
  2.希望被其他类调用的方法用public修饰


本文参考:http://blog.chinaunix.net/uid-20546521-id-1927636.html


你可能感兴趣的:(JAVA菜鸟入门篇)