zoukankan      html  css  js  c++  java
  • 继承、接口、static、abstract

    继承:
    1.用extends来完成继承
    2.子类可以继承父类全部的数据域但是只有部分的数据域对子类可见
    3.在java中支持单继承
    4.单继承和多继承的比较
    (1)多继承比单继承能够更好的提高代码的复用性
    (2)单继承比多继承能够更好的减少方法调用的歧义
    优点:
    (1)提高代码的复用性
    (2)避免方法的调用产生混乱
    接口:

    • 用implements关键字来完成类和接口之间的实现关系
    • 在java中支持的是类和接口之间的多实现
    • 在java中支持接口和接口之间的多继承
    • 接口不能创建对象
    • 接口也没有构造方法
    • 接口不是类
    • 在jdk1.8之前只能定义抽象方法,从jdk1.8开始,接口允许定义实体方法
    • 在接口定义的抽象方法默认是用public abstract修饰
    • 在接口中可以定义属性,但是默认使用public static final修饰
      static:
      静态变量:
    • 在类加载的时候加载到方法区
    • 在方法区2中赋予了默认值
    • 静态变量是先于对象出现,所以习惯上使用类名来调用
    • 本类的所有对象储存的是这个静态变量在方法区中的地址,所以静态变量是被所以对象共享
    • 静态变量只能定义在类中不能定义到任何代码块中
      静态方法:
    • 在类加载的时候加载到方法区
    • 在方法区中只储存不执行
    • 在方法被调用的时候到栈内存中执行
    • 静态方法先于对象出现
    • 静态方法中不能直接使用本类中的非静态
    • 静态方法可以重载
    • 静态方法能被继承,但是不能被重写
      <font color="green“> 静态代码块
      用static{}包起来的代码
      在类加载(第一次使用)的时候执行一次
      执行顺序
      (1)父类静态
      (2)子类静态
      (3)父类非静态
      (4)父类构造方法
      (5)子类非静态方法
      (6)子类构造方法

    abstract:
    抽象类
    1.必须被继承
    2.抽象类不能用final修饰
    3.抽象类的构造方法私有,只不过这个时候需要将其内部类形式来完成继承
    4.不能被实例化,但是有构造方法
    5.子类在继承抽象类之后必须重写其中的所有抽象方法,除非子类也是抽象类
    抽象方法
    1.必须被继承重写
    2.可以重载
    3.不能用static/final/private修饰
    4.如果抽象方法是默认权限,要求子类必须和抽象类同包

  • 相关阅读:
    live2d 快速实现好看的看板娘特效
    JQuery 日期转换日期方法封装
    SQL Server 之 DateTime的常用方法
    C# 之DateDiff 时间差扩展方法
    SQL Server 之如何查询某数据库下的触发器和语句
    Css 设置固定表格头部,内容可滚动
    jquery 点击tr选中checkbox,解决checkbox的默认点击事件被阻止的问题
    VS切换代码自动补全模式
    C#实现软键盘的几个关键技术介绍
    C# 模拟软件键盘输入,使Winfrom窗体不获取鼠标焦点方法
  • 原文地址:https://www.cnblogs.com/Libbo/p/10268852.html
Copyright © 2011-2022 走看看