Java中继承和接口的区别


继承是一种通过复制其他类的一些属性来在多个类之间创建层次结构的方法。Java中存在各种类型的继承,例如单继承、多继承、多层继承、混合继承和层次继承。接口是特定类的蓝图,它包含常量和抽象类。接口类允许机器对对象或类应用某些特定属性。它完全是一种抽象方法,通过指定类的行为来帮助对集合执行Java抽象。现在任务是在这里使用各种Java函数来标记继承和接口之间显著的区别。

输入

C . add ( 5, 10 ) ;
C . subtract ( 35, 15 ) ;
C . multiply ( 6, 9 ) ;
C . divide ( 45, 6 ) ;

输出

The result is here. Have A Look : 15.0
The result is here. Have A Look : 20.0
The result is here. Have A Look : 54.0
The result is here. Have A Look : 7.5

继承和接口的区别

继承

接口

继承允许基类将其行为传递给子类。

接口是一个类,它实现代码中所有声明方法的关系。

我们可以使用override方法重用超类中的代码。

它通过多态性方法提高了代码的可重用性。

它只支持在同一个包中具有多个子类的单继承。

它支持多继承,无需指定任何过程细节。

继承过程允许当前类从父类和祖先类传递现有特征。而接口结构能够定义抽象和设置方法本身之间的契约。

使用的方法

使用菱形方法

算法

在这个算法中,我们声明了一些函数,通过考虑一个设置值来执行ArrayList中的插入顺序。此外,通过使用循环进行迭代,我们将设置遍历长度的时间。

  • 步骤1 - 开始进程。

  • 步骤2 - 声明输入输出流。

  • 步骤3 - 导入内置类和声明的函数。

  • 步骤4 - 声明一个公共类。

  • 步骤5 - 设置函数。

  • 步骤6 - 进行插入排序。

  • 步骤7 - 声明一个ArrayList并填充它。

  • 步骤8 - 声明Set值。

  • 步骤9 - 按照插入方式打印值。

  • 步骤10 - 声明一个循环来迭代过程。

  • 步骤11 - 设置计时器值。

  • 步骤12 - 运行过程并获取输出值。

  • 步骤13 - 终止进程。

语法

在这个语法中,我们首先检查一个TreeSet,并用一些整数值填充它们。之后,我们声明一个Map Set,以从这些元素中创建一些标识对,以便使用entrySet()和hasNext()函数在表上根据它们的状态对其进行过滤,以解释继承和接口类的作用。

TreeSet < Integer > STTREE = new TreeSet <> () ;
STTREE . add ( 4 ) ;
STTREE . add ( 5 ) ;
STTREE . add ( 6 ) ;
STTREE . add ( 8 ) ;
STTREE . add ( 4 ) ;

IdentityHashMap < Integer, String > ihmap
   = new IdentityHashMap < Integer, String > () ;
ihmap . put ( 10, "ARB" ) ;
ihmap . put ( 20, "RDD" ) ;
ihmap . put ( 30, "ARBRDD" ) ;
ihmap . put ( 40, "KOLDHKA" ) ;
ihmap . put ( 50, "You" ) ;

PRINT THE VALUE HERE ( " IdentityHashMap size : " + ihmap . size () ) ;
PRINT THE VALUE HERE ( " Initial identity hash map :  "     + ihmap ) ;

Hashtable < Integer, String > table  
   = new Hashtable < Integer, String > () ;
table . put ( 1 , "X" ) ;
table . put ( 2 , "Y" ) ;
table . put ( 3,  "Z" ) ; 
table . put ( 4,  "A" ) ;

for ( Map . Entry m : table . entrySet () )
   Iterator < IdentityHashMap . Entry < Integer, String > >
      itr = ihmap . entrySet () . iterator () ;
while ( itr . hasNext () ) {
   IdentityHashMap . Entry < Integer, String > entry
      = itr . next ( ) ;
   TreeMap < Integer,Integer > MAPTREE 
      = new TreeMap <> () ;
   MAPTREE . put ( 2,5 ) ;
   MAPTREE . put ( 3,6 ) ;
   MAPTREE . put ( 4,6 ) ;
   MAPTREE . put ( 2,3 ) ;
}

使用菱形方法

在这种方法中,我们将实现菱形方法来获取继承和接口之间的区别。致命的死亡菱形方法是与多重继承相关的过程。该方法添加某种类型的推断以减少过程的冗长性。

示例

在这个示例代码中,我们通过遵循继承的可能方法创建了一个计算器接口。

import java.util.Arrays;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.TreeSet;
import java.util.*;
interface ARBRDD {
   public void add ( double x, double y ) ;
   public void subtract ( double x, double y ) ;
}
interface Mul_Div {
   public void multiply ( double x, double y ) ;
   public void divide ( double x, double y ) ;
}
interface Calculator extends ARBRDD, Mul_Div {
   public void printResult ( double result ) ;
}
public class MyCalculator implements Calculator {
   public void add ( double x, double y ){
      double result = x + y ;
      printResult ( result ) ;
   }
   public void subtract ( double x, double y ){
      double result = x - y ;
      printResult ( result ) ;
   }
   public void multiply ( double x, double y ){
      double result = x * y ;
      printResult ( result ) ;
   }
   public void divide ( double x, double y ){
      double result = x / y;
      printResult ( result ) ;
   }
   public void printResult ( double result ){
      System.out.println ("The result is here. Have A Look: " + result);
   }
   public static void main ( String args [] ){
      MyCalculator c = new MyCalculator () ;
      c . add ( 5, 10 ) ;
      c . subtract ( 35, 15 ) ;
      c . multiply ( 6, 9 ) ;
      c . divide ( 45, 6 ) ;
   }
}

输出

The result is here. Have A Look: 15.0
The result is here. Have A Look: 20.0
The result is here. Have A Look: 54.0
The result is here. Have A Look: 7.5

结论

今天在这篇文章中,我们学习了各种数据集方法的工作过程。通过上述示例,我们执行了查找Java中存在的继承和接口类之间差异的过程。通过上述逻辑、语法和算法;我们尝试构建Java代码来解决问题陈述,并尝试以有效的方式了解遇到的问题。

更新于:2023年10月19日

2K+ 浏览量

启动您的职业生涯

通过完成课程获得认证

开始学习
广告