• java 抽象类&接口


    1,抽象类中有构造函数吗?
    有,用于给子类对象进行初始化。
     
    2,抽象关键字不可以和那些关键字共存?
    private 不行
    static 不行
    final 不行
     
    final关键字:
    1,final是一个修饰符,可以修饰类,方法,变量。
    2,final修饰的类不可以被继承。
    3,final修饰的方法不可以被覆盖。
    4,final修饰的变量是一个常量,只能赋值一次。
    为什么要用final修饰变量。其实在程序如果一个数据是固定的,
    那么直接使用这个数据就可以了,但是这样阅读性差,所以它该数据起个名称。
    而且这个变量名称的值不能变化,所以加上final固定。
     
    对于接口当中常见的成员:而且这些成员都有固定的修饰符。
    1,全局常量: public  static final 
    2,抽象方法。public abstract 
    由此得出结论,接口中的成员都是公共的权限。
     
    //类与类之间是继承关系,类与接口直接是实现关系。 
    /*
    接口不可以实例化。
    只能由实现了接口的子类并覆盖了接口中所有的抽象方法后,该子类才可以实例化。
    否则,这个子类就是一个抽象类。
     
    在java中不直接支持多继承,因为会出现调用的不确定性。
    所以java将多继承机制进行改良,在java中变成了多实现。
     
    一个类可以实现多个接口。 
    一个类在继承另一个类的同时,还可以实现多个接口。
    接口的出现避免了单继承的局限性。
     
    抽象类和接口的异同点:
     
    相同点:
    都是不断向上抽取而来的。
     
    不同点:
    1,抽象类需要被继承,而且只能单继承。
       接口需要被实现,而且可以多实现。 
    2,抽象类中可以定义抽象方法和非抽象方法,子类继承后,可以直接使用非抽象方法。
       接口中只能定义抽象方法,必须由子类去实现。 
    3,抽象类的继承,是is a关系,在定义该体系的基本共性
  • 相关阅读:
    线程中更新ui方法汇总
    Chromium Embedded Framework
    adb提取安装的apk
    下拉列表 Spinner
    更改activity切换方式
    左右页面滑动
    静态成员函数(面向对象的static关键字)
    静态数据成员(面向对象的static关键字)
    静态函数(面向过程的static关键字)
    静态局部变量(面向过程的static关键字)
  • 原文地址:https://www.cnblogs.com/xiarongjin/p/8306661.html
Copyright © 2020-2023  润新知