• 关于final关键字和抽象类,接口


    final主要用于修饰类,方法以及属性

    当用于修饰类时,则这个类不能被子类继承,换而言之该类没有子类

    当用于修饰方法时,该方法也是不能被复写的

    当用于修饰属性时,同理属性值不能被更改

    抽象类,当存在抽象方法时,该类就是抽象类,需要加abstract修饰符,另外该抽象方法必须需要被继承它的子类所重写。

    接口可以多实现,可以理解成一个特殊的类,只是这个类里面是由常量以及公共的抽象方法组成的

    Interface demo{
       public static final int AGE = 10;
       public abstract void tell()
       {}
    
    }
    
    Interface demo2{
      public abstract void say()
     {}
    }
    
    //一个接口可以继承多个接口,弥补了单继承的不足
    interface demo3 extends demo,demo1{
    }
    
    class M{
        public abstract void printf(){} 
    }
    class A extends M implements demo,demo2
    {
       //必须复写tell方法
       public void tell(){}
       
       public void say(){}
    }
    
    class go
    {
       public static void main(String[] args)
      {
          A a=new a();
          a.tell();
          a.say();
          a.printf();
      }
    
    }
    

    一个接口可以实现单继承超类,但是可以多继承接口,可以弥补单继承的不足

    一个类可以继承多个接口,单继承超类

    接口和抽象类的区别:

    继承接口必须复写里面所有的方法,并且接口是没有私有变量或者方法的,但是抽象类可以有自己的私有变量或者方法,另外只必须复写其中的抽象方法,其他可以看程序的需要适当复写。

  • 相关阅读:
    如何 Xcode 开发工具里安装一个空的项目末模板
    推荐完成项目要使用的常用工具
    仿照 QQ 的 cell 的左滑删除、置顶、标记未读效果
    API接口文档的撰写
    UI:动画
    UI:多线程 、用GCD创建线程
    UI:UICollectionView
    开发中的一些零碎知识点
    UI:数据库练习、滤镜效果
    UI:地图和定位
  • 原文地址:https://www.cnblogs.com/Cc1231/p/4814872.html
Copyright © 2020-2023  润新知