抽象类学习

1、抽象类定义:类和类之间有共同特征,将这些具有共同特征的类在进一步抽象形成了抽象类,并且可以根据情况进一步抽象,且由于类本身是不存在的,抽象类无法实例化.
2、既然抽象类无法实例化,它的作用是用在继承的
3、 抽象类也属于引用数据类型
4、final和abstract是对立的关系,final修饰的类无法继承,然而abstract只为继承而存在
5、抽象类虽然无法实例化,但是有构造方法,以供子类使用,但需要注意一个细节

abstract class Vehicle{
    public Vehicle(String speed){}
}

class Car extends vehicle{

}

这段代码不能编译通过.因为生成Car类的对象时,由于Car类没有定义构造方法,系统会自动生成一个构造方法,该构造方法第一行代码为"super();",该行代码会调用父类的无参构造方法,然而,由于父类中定义了有参构造方法,系统不会再生成无参构造方法.所以,无参构造方法尽量自己写出来.
6、抽象类关联到一个概念–抽象方法,语法为"访问权限 abstract 返回值 方法名();"抽象方法没有方法体,且以分号结尾。
7、抽象类中不一定有抽象方法,但抽象方法却只能出现在抽象类中。
8、由第七点可知,当一个非抽象的类去继承一个抽象的类时,必须实现抽象类中定义的的抽象方法–即重写。

abstract class vehicle{
    public abstract void move();
}

class car extends vehicle{
    public void move(){
        System.out.println("something");
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值