抽象类;接口;instanceof

抽象类:

把一个不具体的功能称之为抽象的功能,Java中称之为抽象方法,而如果类中有抽象的方法,该类就必须定义为抽象类


抽象类的特点:
   1、抽象类和抽象方法必须用abstract关键字修饰
           格式:
                    abstract class 类名{}         // 抽象类
                    abstract void  方法名();     // 抽象方法
  2、抽象类不一定有抽象方法,有抽象方法的类一定是抽象类,抽象类里面可以有具体的实现方法
  3、抽象类不能实例化
                按照多态的方式,首先要有继承关系,由具体的子类实例化
                多态的形式实例化,我们在这里称之为:抽象类多态
  4、抽象类的子类
                如果是一个具体的子类,就必须重写所有的抽象方法
                如果是一个抽象的子类,可以不重写父抽象类的抽象方法,也可以有选择性的重写

抽象类中成员的特点:
            成员变量:可以是变量,也可以是常量
            构造方法:有构造方法
                但是抽象类又不能被实例化,构造方法用于子类访问父类进行初始化
            成员方法:
                可以是具体的实现方法,也可也是抽象的方法 
             如果是一个具体的子类,就必须重写所有的抽象方法
             如果是一个抽象的子类,可以不重写父抽象类的抽象方法,也可以有选择性的重写

抽象类里面可以没有抽象方法,他们有着相同的本质,但是没有共同的行为、

接口:(interface)

接口的特点:
1、接口用关键字interface表示
            格式:interface 接口名 {}
2、接口里面写抽象方法
3、用类实现接口,用implements表示
            格式:class 类名 implements 接口名 {}
4、接口不能实例化
            接口多态
            按照多态的方式,由具体的子类实例化,也是多态的一种
5、接口的子类
           要么是具体的子类,但是必须重写接口中的所有抽象方法
           要么是抽象类,可以不重写接口中的方法,也可也选择重写

开发中多态常见:接口多态-->抽象多态-->具体的类中的多态

接口中成员的特点:
        成员变量:只能是常量,而且是静态的,它对成员变量是有默认修饰符:public static final
        构造方法:接口里面没有构造方法
        成员方法:只能是抽象方法,没有方法体,它对方法是有默认修饰符:public abstract void

注:虽然接口里面没有构造方法,但是所有的类都继承一个超类:Object
        Class Object是类Object结构的根。 每个class都有Object作为超类所有的对象都实现了该类里面的方法

类与类之间的关系
            继承关系,只能单继承,不能一次性继承多个,但是可以多层继承
类与接口之间的关系
            实现关系,类可以单个实现接口,也可以一次性实现多个接口
            可以在继承一个类的时候,实现多个接口
            每个类默认继承自Object类
接口与接口之间的关系
            没有实现关系,只有继承关系
            接口可以单继承一个接口,接口也可以一次性继承多个接口

instanceof:用来判断一个对象是否属于某个类的,返回类型是布尔类型

格式 :         object instanceof A;

只有两边可以使用向上转型或向下转型实现的才可以比较
 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值