写一个java程序,实现其抽象类概念然后再将抽象类改写成接口类并实现其结果
答案:2 悬赏:0 手机版
解决时间 2021-03-09 15:22
- 提问者网友:欲劫无渡
- 2021-03-09 01:21
写一个java程序,实现其抽象类概念然后再将抽象类改写成接口类并实现其结果
最佳答案
- 五星知识达人网友:孤老序
- 2021-03-09 01:47
public abstract animal()
{
public abstarct void run();
}
public void Dog extends animal()
{
public void run()
{
System.out.print("the dog runs slowly");
}
}
以上就是抽象类的概念。
interface animal()
{
public void run();
}
public void Dog implemants animal()
{
public void run()
{
System.out.print("the dog runs slowly");
}
}
接口的实现
{
public abstarct void run();
}
public void Dog extends animal()
{
public void run()
{
System.out.print("the dog runs slowly");
}
}
以上就是抽象类的概念。
interface animal()
{
public void run();
}
public void Dog implemants animal()
{
public void run()
{
System.out.print("the dog runs slowly");
}
}
接口的实现
全部回答
- 1楼网友:佘樂
- 2021-03-09 02:37
接口可以多实现,抽象类却只能单继承。
interfacea{}
interfaceb{}
publicclasscimplementsa,b{
}
abscracta{}
abscractb{}
publicclasscextendsa{
}
这样的话可以看出接口明显优于抽象类,所以一般情况下都用接口.
但是抽象类是不是就没用用呢?
如果学过java设计模式的话可以看到适配器模式,这里面为什么会把很多的父类设定为抽象类,因为抽象类中的方法你可以做空实现处理,如果一个子类直接继承了你这个父类,其实我只是要用你里面的一个方法,如果做成接口的话,我必须每个方法都要去实现,但是抽象类的话,你只需要去覆盖你需要的方法即可。
interfacea{
publicvoidmethoda();
publicvoidmethodb();
}
publicabstractclassb{
publicvoidmethoda(){}
publicvoidmethodb(){}
}
publicclasscextnedsb{
publicvoidmethoda(){
//覆盖该方法
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯