java抽象类和抽象方法

首先应该明确一点的是,抽象方法必须定义在抽象类中。

先看一个抽象类的定义:

public abstract class Animal {

    public abstract void eat();
    
    public abstract void sleep();
    
    public void Smile()
    {
        System.out.println("每个动物都会微笑,因为最美!");
    }

}

抽象类作为一个父类,可以定义抽象方法,也可以定义一般方法。

我们在来定义一个子类:

public class Man extends Animal{

    public void eat()
    {
        System.out.println("一天天就知道个吃");
    }
    
    public void sleep() 
    {
        System.out.println("就知道个睡");
    }
    
    public static void main(String[] args)
    {
        Man obj=new Man();
        obj.eat();
        obj.sleep();
        obj.Smile();
    }
}

子类Man继承了抽象类,那么就必须将其抽象方法实现,是必须,必须,不然就会报错。

 

 

抽象类和接口的区别:

子类继承了抽象类,抽象方法必须实现,然而其他其他方法可以不实现,抽象方法中也可以定义不是抽象的方法

子类实现接口,接口中默认的方法都为抽象方法,也就不能实现,一个子类可以实现多个接口,而只能继承一个抽象类,其实接口是抽象类中更为具体的一种类而言。

public interface TrafficTool {

    void Car();
    
    void Airport();
    
    void Train();

}

public class LandTool implements TrafficTool {

    public void Car()
    {
        System.out.println("走,咋们炸汽车去");
    }
    
    public void Airport()
    {
        System.out.println("走,咋们炸飞机去");
    }
    
    public void Train()
    {
        System.out.println("抢火车去不去,愣货");
    }
    
    public static void main(String[] args)
    {
        LandTool obj=new LandTool();
        obj.Car();
        obj.Airport();
        obj.Train();
    }
}

 补充接口,接口不允许任何方法定义,接口和实现完美分离。

 

转载于:https://www.cnblogs.com/Optimism/p/10484340.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值