JAVA多态学习3

这一节我们来学习抽象类

抽象类–深入讨论
抽象类是java中一个比较重要的类。
1、用abstract关键字来修饰一个类时,这个类就是抽象类。
2、用abstract关键字来修饰一个方法时,这个方法就是抽象方法。
3、abstract抽象类中的abstract抽象方法是不允许在抽象类中实现的,一旦实现就不是抽象方法和抽象类了。abstract抽象方法只能在子类中实现。
4、抽象类中可以拥有实现方法。
5、抽象方法在编程中用的不是很多,但是在公司笔试时,却是考官比较爱问的知识点。

抽象类–注意事项
1、抽象类不能被实例化
2、抽象类不一定要包含abstract方法。也就是说,抽象类可以没有abstract抽象方法。
3、一旦类包含了abstract抽象方法,则这个类必须声明为abstract抽象类。
4、抽象方法不能有主体。
正确的抽象方法例:abstract void abc();
错语的抽象方法例:abstract void abc(){}

package abstractclass;

public class Abstractclass {

    public static void main(String[] args) {
        // TODO 自动生成的方法存根
        //Animal an=new Animal();抽象类不允许实例化
        Animal an=new Cat();
        an.cry();
        an.sx();
        an=new Dog();
        an.cry();
        an.sx();

    }

}

//抽象类abstract关键词
abstract class Animal{
    String name;
    int age;
    //动物会叫,使用了abstract抽象方法
    abstract public void cry();//抽象类中可以没有abstract抽象方法
    //抽象类内可以有实现方法
    public void sx(){
        System.out.println("实现方法");
    }
}
//当一个子类继承的父类是abstract抽象类的话,需要程序员把抽象类的抽象方法全部实现。
class Cat extends Animal{
    //实现父类的cry,其实类似上节学习中的子类覆盖父类
    public void cry(){
        System.out.println("猫猫叫");
    }
}
class Dog extends Animal{
    //实现父类的cry,其实类似上节学习中的子类覆盖父类
    public void cry(){
        System.out.println("汪汪叫");
    }
}

abstract

下一节我们来讲一下接口类,并且希望能在抽象类和接口类上进行比较

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值