4.Java 抽象类、接口

作者: KaelQ | 来源:发表于2016-08-07 21:45 被阅读231次

1.抽象类

  • 如果一个类含有抽象方法,则称这个类为抽象类,抽象类必须在类前用abstract关键字修饰。它有以下特点:
    1. 抽象类可以有抽象方法,也可以没有。可以有普通方法,也可以没有。
//这也是抽象类
public abstract class ClassName{
        public void go(); 
}
  1. 抽象类不能实例化。
    ClassName cn=new ClassName();//错误写法,抽象类不能实例化。
  2. 普通类继承一个抽象类,必须实现抽象方法。可以不实现,这时普通类需要添加abstract变成一个抽象类。
public abstract Class extends ClassName{
}
  1. 抽象类中可以有成员变量和成员方法。
public abstract class ClassName{
        public int a;
        public void go(); 
}
  1. 一个普通类只能继承一种抽象类。
    public class extends classname1,classname2//错误写法
  2. 一个抽象类遵循一个接口,可以不实现其抽象方法。
public abstract class ClassName implements interface {
}

2.接口

  • 以interface关键字修饰的类。它有以下特点:
    1. 接口中的所有变量都是public static final 。
    2. 接口中的所有方法都是抽象方法。
public interface{
   public static final int A_NUM=1;
   public abstract void fun();
}
  1. 可以同时遵循多个接口。
class name implements interface1,interface2……//可以遵循多个接口

3.抽象类的意义

  • 为其子类提供一个公共的类型 封装子类中得重复内容 定义抽象方法,子类虽然有不同的实现 但是定义是一致的。比如男人买东西,女人买东西,可以抽象出 抽象类人,抽象方法为买东西,男人和女人不同实现。

4.接口的意义

  • 规范性,按照接口规范实现接口的的方法,就能提供所期望的功能。多人开发时,合作更加的高效率。
  • 扩展性强,降低各模块的耦合性,提高了扩展性。
  • 回调,和向上转型类似。A是B的父类,A a =new B();使用接口的核心原因:为了能够向上转型为多个基类型。

5.抽象类和接口的区别

  • 语法层次
  1. 关键字不同,abstract和interface。
  2. 成员变量和成员方法不同,抽象类都是可有可无,接口必须是静态常量和抽象方法。
  3. 一个普通类只能继承一个抽象类,可以遵循多个接口。
  • 思想层次
    • 抽象类是内容,是对一种事物的抽象,比如,鸟类是所有鸟的抽象。
    • 接口是特征,是对一种行为的抽象,比如,鸟类拥有的特征是飞。

相关文章

  • 4.Java 抽象类、接口

    1.抽象类 如果一个类含有抽象方法,则称这个类为抽象类,抽象类必须在类前用abstract关键字修饰。它有以下特点...

  • 5.5-全栈Java笔记:接口的定义和使用

    接口interface 接口的作用 为什么需要接口?接口和抽象类的区别? 接口就是比“抽象类”还“抽象”的“抽象类...

  • 建造者模式

    建造者抽象类或接口 建造者抽象类或接口实现类 产品抽象类或接口 产品抽象类或接口实现类 使用

  • 代理(委托)模式

    主题抽象类或接口 主题抽象类或接口实际类 主题抽象类或接口代理类 使用

  • 访问者模式

    元素抽象类或接口 元素抽象类或接口实现类 访问者抽象类或接口 访问者抽象类或接口实现类 场景使用

  • 4.java 接口

    java接口# 抽象类型 ,通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。 ...

  • Java 接口 抽象类 枚举

    接口 使用接口对行为进行抽象 接口: 抽象类 抽象类是用来捕捉子类的通用特性的,包括属性及行为。 抽象类: 抽象类...

  • 抽象类与接口

    抽象类 一般将父类定义为抽象类。语法如下 接口 接口简介 接口是抽象类的延伸,可以将它看作是纯粹的抽象类,接口中的...

  • 技术问 - 抽象类与接口有什么异同

    抽象类与接口的不同 抽象类与接口的相同

  • 夯实Java基础系列6:一文搞懂抽象类和接口,从基础到面试题,揭

    目录 抽象类介绍为什么要用抽象类一个抽象类小故事一个抽象类小游戏 接口介绍接口与类相似点:接口与类的区别:接口特性...

网友评论

    本文标题:4.Java 抽象类、接口

    本文链接:https://www.haomeiwen.com/subject/gfslsttx.html