1. 抽象类的初步详解

在面向对象中,所有的对象可以通过类来创建。 但并不是所有的类都可以创建对象实例化的。如果一个类中没有足够完整的信息来描述具体的对象的话,那么这个类是抽象类,

Java中用 abstract 关键字来修饰类,这个类叫抽象类。

2. abstract 的语法格式

使用abstrct关键字修饰的方法就是抽象方法,值得注意的是,抽象方法只包含一个方法名,没有方法体。

语法格式:

abstarct class 类名{
    普通的方法;
    public void eat () {
    
    
    }
    抽象方法;
    public abstarct void sleep ();
}

如果一个类包含抽象方法,那么该类必须是抽象类。

3.抽象类的使用

1.如果一个类中用abstract修饰的话,那么这个类叫抽象类

abstract class Dog{    
        //这是个抽象类
}

2.抽象类中可以有普通成员方法和抽象方法

abstract class Dog{    
     public abstract void eat(); //抽象类中可以有抽象方法,抽象方法没有方法体
     public void run (){
        //抽象类中也可以有普通成员方法
  }  
}

3.抽象方法没有方法体,是不完整的方法

4.抽象类不能被实例化

5.写一个普通的类去继承抽象类

class Person{
//定义一个抽象方法  是不完整的方法  没有方法体的
	abstract public  void work();
}


//定义了咋用啊? 抽象类创建不了对象的 咋解决?
//解决方案: 再写一个普通类去继承抽象类即可
class Man extends Person {

}

6.在子类中一定去实现(重写)抽象类中所有的抽象方法

 abstract class Person{
	public abstract void eat();
}

class Man extends Person {
    @Override     //对父类中的抽象方法进行重写
	public void eat() {
		System.out.println("吃肉!!!");
	}
}

7.非抽象方法可以重写也可以不重写

8.一个抽象类可以去继承另外一个抽象类

9.抽象类可以继承非抽象类

这部分内容到这里就结束啦,希望能帮助到大家!!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值