继承,抽象,多态,接口

+         

         继承的有点:

        1.代码的课重用性;

        2.子类可以扩展父类的属性和方法

        3.父类的属性和方法可用于子类

        4设计应用程序变得更加简单

        5.方法的重写

   继承体系中类与类之间都是“is-a”的关系;

 继承的单根性: 在java中都是单继承  ,一个子类只有一个父类(继承的单根性);

  方法的重写:

    方法的重写就是子类对父类方法的重写;

    规则:

      方法的名字,返回名称和形式列表想同,访问修饰符必须不小于父类的访问修饰符;

      子类中重写抛出的异常不能比父类的多;

  构造方法不会被继承;

  默认情况下无参构造器会调用父类的无参构造器;

抽象:

  关键字:abstract

       抽象类不能别实例化,必须由子类来实现;

   抽象方法:

    抽象方法没有方法的主体,只有签名,用abstract修饰,抽象方法必须出现在抽象类中,抽象方法在子类中必须被实现

除非子类也是抽象类

多态:

    实现多态:

      1首先要编写父类派生子类;

      2在子类中重写父类方法

      3用父类数据类型引用子类对象

关键字:instanceof   判断是否是父类的实例,

           

接口:

    关键字:interface ;

  例:public interface 接口名{}

  

  在接口中的方法都是抽象方法没有主体,只有约定;

  接口中没有构造方法,不被实例化的;

  在接口不能定义变量的使用,在接口中如果定义有变量都是静态会有的常量,不能进行改变;

 关键字:

    implements; 实现接口;

   一个类可以实现多个接口,接口和接口可以实现继承,接口可以实现多个继承;

 接口的原则:

    1使用接口解决多继承

    2 使用接口为外部类添加功能

 接口的优点:

   1 将涉及和实现分离,对外隐藏了实现;

   2   面向接口编程是oop的核心

 

内部类:

    在类的内部定义的类;

  特点:

    1独立的一个class文件 

    2同样需要进行编译

    3同样可以产生对象

    

  

原文地址:https://www.cnblogs.com/yuancheng1/p/4420505.html