卷前:面向对象的多种理论知识在实践开发中是有很大作用的,不做多的解释,自用。

Java 接口

  1. 理论:接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。

    接口并不是类,编写接口的方式和类感觉差不多,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法。

  2. 码代码除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。(接口中方法一般少于实例类的)

    接口无法被实例化,但是可以被实现。一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类(构造函数)。另外,在 Java 中,接口类型可用来声明一个变量,他们可以成为一个空指针,或是被绑定在一个以此接口实现的对象。

  3. 实例:interface lntf
    {
    //public abstract void pay();
    void pay();
    }
    class person
    {
    void ad()
    {
    System.out.println(“我是人类”);
    }
    }
    class teacher extends person implements lntf
    {
    int base;
    int award;
    teacher(int a,int b)
    {
    base = a;
    award = b;
    }
    void ad()
    {
    System.out.println(“我是老师”);
    }
    public void pay()
    {
    int gz = award * 50 + base;
    System.out.println(“工资为:” + gz);
    }
    }
    class collegestudent extends person implements lntf
    {
    int x;
    collegestudent(int a) //构造函数
    {
    x = a;
    }
    void ad()
    {
    System.out.println(“我是学生”);
    }
    public void pay()
    {
    int gz = x;
    System.out.println(“工资为:” + gz);
    }
    }
    public class test
    {
    public static void main(String []args)
    {
    //person ps = new person(); //父类
    teacher tc = new teacher(3000,50);
    collegestudent cs=new collegestudent(400);
    //ps.ad();
    tc.ad();
    tc.pay();
    cs.ad();
    cs.pay();
    }
    }
  4. 链接

卷中:初学者普遍认为多态就是父类的引用可以指向子类的对象,其余的功能就都和 继承一样了,这到底有什么作用,不如直接有继承或直接有多态二者选一个就够了。

Java 多态

(部分引用)举一个最简单的例子,假设你要设计一个通用框架,这个框架会涉及到数据库的操作,但是你不能限定用户用哪个数据库,这个时候你就可以用到多态。
你可以设计一个接口:DataBaseDao(DatabaseAccessObject)
然后,每个不同的数据库,你可以编写接口的实现类,比如:SQLServerDao, MySqlDao, DB2Dao等等

当用户使用你框架的时候,他就可以用多态,实现自己的数据库连接功能:
DaoBaseDao dao = new SQLServerDao();  //针对SQLServer的接口实现,这里dao就是多态
dao.connect();

(部分引用)再举个例子

class Car{
void run(){

}
}

class BMW extends Car{}
class Benz extends Car{}

实现的时候

Car car = new BMW();
car.run();

将来你开着觉得难受,直接将new BMW()换成 new Benz()就可以了,完全不影响别的代码。

 

面向对象,面向显示器。