一起Talk Android吧(第十回:Java中的封装:二)

162 阅读2分钟

各位看官们,大家好,上一回中咱们说的是Java封装的例子,这一回咱们继续说该例子。闲话休提, 言归正转。让我们一起Talk Android吧!

看官们,在Java中除了类具有封装功能外,接口也有该功能,接下来我们通过伪代码来演示接口的封装功能。

interface A
{ 
    permission type value; 
    permission type function(); // don't do anything
}

伪代码中的interface是Java中的关键字,它表示接口这种类型。A是接口的名字。位于大括号中的内容就是被接口封装的内容。和类中的内容相同,它们也是分为两个部分:

一部分是接口的成员变量;
另外一部分是接口的成员函数;

一般情况下,我们不会在接口中封装变量,当然了,如果有需要,这也是符合语法的。接口的封装是比较特殊的,特殊之处在于它封装的成员变量默认拥有public访问权限,而且使用了final和static来修饰,表示它属于接口的常量。因为是默认添加的,所以我们定义接口的时候不会把这些修饰符加到成员变量前面。此外,成员函数也有默认的规则,那就是使用abstract来修饰成员函数,这样成员函数就默认为抽象函数。和成员变量一样,成员函数也默认拥有public访问权限。不过我们定义接口时经常省略掉abstract这个修饰符。关于默认的访问权限,虽然语法上默认为public,不加的话也会有同样的效果,但是我建议定义接口时加上访问权限比较好。

接口中包含了抽象方法,因此,它有点像抽象类,不能用来实例化对象。如果想使用接口,必须实现接口中的抽象函数。我们常用的办法是,定义一个类,通过类来实现接口中的抽象函数,然后实例化一个类的对象,这样就能使用接口中的方法了。下面我们通过伪代码来显示一下这个过程:

interface B 
{
    publie void func();
 };

class C implements B 
{
      public void func()
      {
          //do something
      };
 };

C object = new C(); 
object.func();

上面的伪代码中,我们定义了接口B,然后定义了类C,并且实现了接口B,在类C中我们实现了接口B中的抽象方法func();最后我们创建了类C的对象object,这样我们就可以使用通过ojbect.func()来使用接口中的方法了。

各位看官,关于Java中封装的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!