抽象类和接口笔记——2022-03-25

 

抽象类接口

        抽象类:现实中不存在的东西;

在JAVA中只申明,不实现

    抽象方法:使用abstrac来修饰,不可以有方法体,直接用分号结束即可

    抽象类:如果一个类中又抽象方法,那么这个类必定是抽象类

特点:

      1抽象类不可以创建对象

      2抽象类的子类必须重写父类的抽象方法,否则这个子类就必须是抽象类

      通过抽象类可以强制要求子类中必须有哪些方法,不写就会报错

 

小知识点:抽象类中可以有正常的方法;

 

public abstract class Animal{//类中如果有抽象方法,那么这个类就是抽象类//用abstract修饰方法,这个方法就是一个抽象方法,抽象方法没有方法体,直接用;结束//子类

抽象类特点——课堂笔记

   抽象特点:

    抽象类和抽象方法必须用abstract关键字修饰

    格式:abstract class 类名{ }

    public abstract void eat();

 

注意事项:

    1.没有具体的实现方法,被定义成抽象方法,而抽象方法是没有方法体的,连大括号都没有

  2.如果一个类中存在抽象方法,这个类就必须是抽象类。

  3.抽象不能被实例化

问题:那么如何实现实例化里面的东西

    需要一个具体的类继承该抽象类,利用多态的形式去创建多态(抽象多态);

  4具体的类继承该抽象类就必须实现该抽象类的全部抽象方法

  5.抽象类去继承抽象类,可以不用实现父类中的抽象方法

  6抽象类中可以存抽象类也可以存非抽象类

  7.抽象类中不一定有抽象方法,但有抽象方法的类一定是抽象类;

抽象类员的特点:

  成员变量:既可以是变量也可以是称常量

  构造方法:有构造方法。因为抽象类不能被实例化。构造方法的作用是用于子类初始化父类。

  成员方法:既可以是抽象的,也可以是具体的方法

  具体的类继承抽象类,就强制要求子类重写抽象父类的抽象方法

  抽象类继承抽象类,可以选择性的实现

 

**abstract不能和那些关键字共存

private 冲突

//java: 非法的修饰符组合: abstract和private

// private abstract void show();

// private abstract void show();

final冲突

static冲突

 

 

 

接口:最重要的就是接口能把毫不相关是内容整合,使之产生联系在一起

  实际上是一种特殊的抽象类

  接口中的所有的方法都是抽象方法

  接口使用interfance来申明

 

 

特点:1接口中所有的方法都是抽象方法,都是公开的

2接口中所有的变量都是全局静态常量

 

接口一样具有多态性:更恐怖的是接口支持多继承

 

/*继承接口的只能是接口接和类只能是实现关系implements*/public interfa Valuable{ //接口使用interface来申明,已经不在是类了 //接口中所有的方法都是抽象的,可以省略abstract //接口中所有的方法都是公开的,公共的(public abstract) void getmoney();//接口中所有的方法都是抽象方法,不能有正常的方法}

接口一样具有多态性:

public class Gold implement Valuable{//类用继承,接口用implement //必须要重写抽象方法 public void}

 

接口:——课堂

接口可以看成一个特殊的类。

接口的特点:1。接口用关键字 interface 表示

格式 interface 接口名{}

2.实现接口用 implements 接口名 { }

3.接口不能实例化

那么接口如何实例化呢?

按照多态的方式,有具体的子类实例化,属于接口多态

4接口的子类

要么是抽象类

要么是具体的类实现接口的所有抽象方法

到目前为止,我们学过那些多态呢?

1具体的类之间的多态(最后)

2.抽象多态(其次是抽象多态)

3、接口多态(最常用的就是接口多态)

接口成员的特点:

成员变量:只能是常量,系统会默认添加 punlic static final 修饰符

构造方法:接口不能被实例化,接口中没有构造方法

成员方法:只能是抽象方法,且系统会默认给出修饰符:public static abstract

 

 

最重要:类乐类。类与接口。接口与接口 之间的关系

类与类:继承关系,不能多继承,但是可以多重继承体系;

类与接口:实现关系,一个类可以实现多个接口

接口与接口:继承关系,一个接口可以同时继承多个接口多接口之间用逗号隔开

 

posted @ 2022-03-25 08:20  a-tao必须奥利给  阅读(40)  评论(0)    收藏  举报