Java抽象类详解(源码示例)

大家好,今天分享一下Java抽象类 1.anstratct 修饰符 **可以用来修饰方法,**也可以修饰类,如果修饰方法,那么该方法就是抽象方法,如果修饰类,那么这个类,就是抽象类。

  1. 抽象类中,可以没有抽象方法,但是有抽象方法的类一定要声明为抽象类
  2. 抽象类,不能使用new 关键字来创建对象,它是用来让子类继承的
  3. 抽象方法,只有方法的声明,没有方法的实现,它是用来让子类实现的
  4. 子类继承抽象类,那么就必须要实现抽象类没有实现的抽象方法,否则该子类也要声明为抽象类

上源码实例 创建Action类

package Demo8;

public class Action {
          
   
}

这样改

package Demo8;
   //abstract   :这是抽象类
public abstract class Action {
          
   
    //这是一种约束,    有人帮我们实现
    //abstract,抽象方法,只有方法名字,只有方法名字,没有方法的实现
    public abstract void  doSomething();
}
package Demo8;

public class A {
          
         //创建A类
    
}

让A类继承于Action类

package Demo8;

public class  A extends Action {
          
         //创建A类

}
//让A类继承于Action类,这是这样写会报错

这样改一下

package Demo8;
//       public  abstract class  A extends Action {     //除非是这种情况   即子类也是抽象类,那它的方法要继承于这个子类的类来完成
public class  A extends Action {
          
         //创建A类
    //在java 当中,   extends表继承的关系,继承的局限在于只能单继承,即:当前的类只可以继承于一个类,不可以继承多个
//抽象类所有的方法,继承它的子类,就一定要实现它的方法
    @Override
    public void doSomething()   {
          
   

    }
    //1.不能new这个抽象类,只可以让它的子类去实现它,只是一种约束
    //2.   抽象类中可以写普通的方法
    // 3.   抽象方法必须抽象类中
    //抽象类存在的意义:   提高开发效率
    }

好了,抽象类就到这里了,谢谢大家

经验分享 程序员 微信小程序 职场和发展