「java程序实现接口继承」java接口可以继承接口

博主:adminadmin 2022-11-23 12:41:07 44

本篇文章给大家谈谈java程序实现接口继承,以及java接口可以继承接口对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java 怎么使用接口、继承?

class

A

implements

xxx

这是指类A需要实现

接口xxx中定义的方法

class

B

extends

yyy

是指类B继承自类yyy,这样类B就直接拥有了类yyy的公开方法及成员变量

class

C

extends

yyy

implements

xxx指类C继承自类yyy并且要实现接口xxx中定义的方法

java如何通过实现接口的方式来实现多继承

多态

1.JAVA里没有多继承,一个类之能有一个父类。而继承的表现就是多态。一个父类可以有多个子类,而在子类里可以重写父类的方法(例如方法print()),这样每个子类里重写的代码不一样,自然表现形式就不一样。这样用父类的变量去引用不同的子类,在调用这个相同的方法print()的时候得到的结果和表现形式就不一样了,这就是多态,相同的消息(也就是调用相同的方法)会有不同的结果。举例说明:

//父类

public class Father{

//父类有一个打孩子方法

public void hitChild(){

}

}

//子类1

public class Son1 extends Father{

//重写父类打孩子方法

public void hitChild(){

System.out.println("为什么打我?我做错什么了!");

}

}

//子类2

public class Son2 extends Father{

//重写父类打孩子方法

public void hitChild(){

System.out.println("我知道错了,别打了!");

}

}

//子类3

public class Son3 extends Father{

//重写父类打孩子方法

public void hitChild(){

System.out.println("我跑,你打不着!");

}

}

//测试类

public class Test{

public static void main(String args[]){

Father father;

father = new Son1();

father.hitChild();

father = new Son2();

father.hitChild();

father = new Son3();

father.hitChild();

}

}

都调用了相同的方法,出现了不同的结果!这就是多态的表现!

2.JAVA中没有多继承,而用接口实现了多继承!一个类或是可以同时实现多个接口!(就相当于C++里一个类同时继承了多个类!)例如:

public class Son implements Father1,Father2,Father3{

}

接口有利于代码功能的扩展(增加新的功能)!而继承则有利于代码功能的修改(把旧的功能改成新的功能)!这里旧功能的修改和新功能的增加前提是不修改旧的功能,旧的功能仍然可以使用!旧类的代码也不做修改!

接着上面的继承举例:上面例子中的子类我们统称为一代子类

1.用继承修改旧的功能。

现在如果一代Son1的功能打孩子,也就是方法hitChild()里边的功能实现有问题,我们要把具体实现修改掉,那么我们可以重新写一个新的二代子类Son11继承自一代子类Son1,并重写其hitChild()方法。

//二代子类

public class Son11 extends Son1{

//重写父类打孩子方法

public void hitChild(){

System.out.println("我是二代子类对此方法的新实现");

}

}

2.用接口实现增加新的功能。

现在类Son1已经有了‘打孩子’功能(也就是方法),而我们有了新的需求,我们需要它还要有一个新的功能‘宠孩子’(新方法pet();)。而旧的代码不能动!那么我们可以定义一个新的接口(PetInterFace),接口里定义这个方法pet()的声明。再重新写一个二代子类Son11,让它先继承类Son1,同时实现接口 PetInterFace!并实现接口里的 pet()方法!

//新接口

public interface PetInterFace{

//新功能方法

public void pet();

}

//二代子类

public class Son11 extends Son1 implements PetInterFace{

//实现接口方法

public void pet(){

System.out.println("父亲很爱我!");

}

}

这样这个二代子类即有了老的方法,又有新的功能!

转至CSDN博客,如有侵权,联系删除。有问题可以追问。

在 java中,用一个类同时继承一个类和实现一个接口,怎么写这个类的

首先,需要了解一下java关于类继承和接口实现的基础理论知识,如下:

类继承:继承是面向对象最显著的一个特性。继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力。Java继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类。

接口实现:接口实现在java中是一种特殊继承方式,接口在定义后,就可以在类中实现该接口。在类中实现接口可以使用关键字implements,其基本格式如下:

[修饰符] class 类名 [implements 接口列表]{

}

然后,需要创建父类和定义接口,如下:

创建父类:

class Bird {

int legnum = 2;

void egg() {

};

}

定义接口:

interface Flyanimal{     

   void fly();  

}

最后,可以创建一个类来继承上面的父类和实现上面的接口,如下:

class Pigeon  extends Bird implements  Flyanimal {  

   public void fly(){  

       System.out.println("pigeon  can fly");  

   }  

   public void egg(){  

       System.out.println("pigeon  can lay  eggs ");  

   }  

}

java 实现接口和继承有什么区别

首先的话,在 Java 中应该说“扩展”(extend)而不是“继承”(inherit),尽管知道它实现上就是C++那种继承,但逻辑上是不完全相同的。

再考虑到接口即协议,对接口的扩展,或是说对协议的扩展,实际上就包括了对其公用方法的扩展以及对其定义的扩展两个方面,其中扩展接口定义实际上即为对协议添加更多的约束,在减少了其可能包含的类的种类的同时也给了这些类更清晰的定义,也就允许用户基于这更清晰的定义做出更多的操作了。

所以呢,实际类的扩展实际上和继承是相同的,子类确实继承了父类的实现,但接口的扩展则只会获取到父接口的方法声明,继承的意味并不明显,更多的实际上在于对其原协议的扩展,因此应将子接口和父接口间的关系视为扩展而不单单是继承

其实就是多去思考为什么在Java这叫扩展不叫继承,很多问题就迎刃而解了

java程序实现接口继承的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java接口可以继承接口、java程序实现接口继承的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-23,除非注明,否则均为首码项目网原创文章,转载请注明出处。