关于java抽象类抽象方法

你好! 这篇文章将讲述java中的抽象类和抽象方法的知识点,这个是最简单的,也是最容易被遗忘的。温故而知新,可以为师矣。

抽象类

抽象类里不一定有抽象方法。
抽象类里的方法必须通过他的子类调用,因为抽象类不能被实例化。
子类必须实现抽象类中的抽象方法(即使是空实现)。
含有抽象方法的类必须是抽象类。

抽象类的写法:

1
2
3
public abstract class Abstra{

}

抽象类需要被abstract 关键字修饰

抽象方法

并不是抽象类里的方法都叫做抽象方法,抽象方法是抽象类里被abstract 关键字修饰的、只有方法头没有方法体的方法
如下:

1
2
3
4
5
6
7
8
public abstract class Abstra{
//抽象类里的非抽象方法
public void sd(){
System.out.println("sadds");
}
//抽象类里的抽象方法
public abstract void sum();
}

抽象类可以没有抽象方法

##
抽象类的方法怎么被调用 ##

因为抽象类不能被实例化,所以就得写个子类来继承他,再通过实例化子

类调用抽象类的方法

1
2
3
4
5
6
public abstract class Abstra{
//抽象类里的非抽象方法
public void sd(){
System.out.println("sadds");
}
}

继承抽象类重写抽象方法

1
2
3
4
5
public class AbstraAbs extends Abstra{
public void sd() {
super.sd();//子类重写抽象方法,通过super调用父类方法
}
}

获得子类实例调用子类方法

1
2
3
4
5
6
public class TestClass{
public static void main(String arg[]){
AbstraAbs abs = new AbstraAbs();
abs.sd();
}
}

输出结果

1
sadds

如果只是单纯的想调用抽象类的方法而不做任何改变,子类也可以这样写

1
2
3
public class AbstraAbs extends Abstra{

}

就是什么都不用写,调用时调的还是抽象类里的那个方法。这是因为父子类的关系,不懂的可以看一下有关父子类的知识点。

本文标题:关于java抽象类抽象方法

文章作者:walking

发布时间:2019年01月14日 - 09:20:35

最后更新:2019年05月29日 - 13:14:52

原始链接:https://itwalking.top/page/a123d3.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

坚持原创技术分享,您的支持是我创作的源泉!
0%