Differenza tra addominalitracClasse t e interfaccia in Java

Differenza chiave tra gli addominalitracClasse t e interfaccia in Java

  • In Interface, una classe può implementare più interfacce, mentre la classe può ereditare solo un AbstracClasse t.
  • In Interface non ha modificatori di accesso. Si presume che tutto ciò che è definito all'interno di Interface abbia un modificatore pubblico, mentre AbstracLa classe t può avere un modificatore di accesso.
  • L'interfaccia non può contenere campi dati, mentre l'abstracLa classe t può avere campi dati.
  • Le interfacce aiutano a definire le capacità periferiche di una classe, mentre un'astrazionetracLa classe t definisce l'identità di una classe.

Interfaccia vs AssorbimentotracClasse t in Java

Che cos'è un addominale?tracClasse t?

Una classe che ha l'abstracLa parola chiave t nella sua dichiarazione è chiamata abstracClasse t. AddominalitracLe classi t dovrebbero avere zero o più valori assolutitracmetodi t. Ovvero, metodi senza corpo. Può avere più metodi concreti. AssolutotracLe classi t consentono di creare modelli per classi concrete. Ma la classe che eredita dovrebbe implementare l'abstract.tracMetodo t. AssorbimentotracLe classi t non possono essere istanziate.

Motivi importanti per l'utilizzo delle interfacce

  • Le interfacce sono utilizzate per raggiungere abstracproduzione.
  • Progettato per supportare la risoluzione dinamica del metodo in fase di esecuzione
  • Ti aiuta a ottenere un accoppiamento allentato.
  • Consente di separare la definizione di un metodo dalla gerarchia di ereditarietà

Motivi importanti per utilizzare gli addominalitracClasse t

  • AbstracLe classi t offrono funzionalità predefinite per le sottoclassi.
  • Fornisce un modello per classi specifiche future
  • Ti aiuta a definire un'interfaccia comune per le sue sottoclassi
  • AbstracLa classe t consente il riutilizzo del codice.

Cos'è un'interfaccia?

L'interfaccia è un modello che può essere utilizzato per implementare una classe. L'interfaccia non contiene metodi concreti (metodi che hanno codice). Tutti i metodi di un'interfaccia sono assoluti.tracMetodi t. Un'interfaccia non può essere istanziata. Tuttavia, le classi che implementano le interfacce possono essere istanziate. Le interfacce non contengono mai variabili di istanza, ma possono contenere variabili pubbliche statiche finali (ovvero, variabili di classe costanti).

Differenza tra interfaccia e AbstracClasse t in Java

Un addominalitracUna classe t ti permette di creare funzionalità che le sottoclassi possono implementare o sovrascrivere, mentre un'interfaccia ti permette solo di dichiarare la funzionalità ma non di implementarla. Una classe può estendere solo un'assolutatracuna classe t mentre una classe può implementare più interfacce.

Scheda Sintetica Interfaccia Abstracclasse t
Velocità Rallentare Connessione
Molteplici ereditarietà Implementare diverse interfacce Solo un addominaletracclasse t
Structure Abstracmetodi t Abstracmetodi concreti e t
Quando usare Miglioramento futuro Per evitare l'indipendenza
Ereditarietà/Implementazione Una classe può implementare più interfacce La classe può ereditare un solo AbstracClasse t
Implementazione predefinita Mentre si aggiungono nuove cose all'interfaccia, è un incubo trovare tutti gli implementatori e implementare cose appena definite. In caso di AbstracNella classe t, è possibile sfruttare l'implementazione predefinita.
Modificatori di accesso L'interfaccia non dispone di modificatori di accesso. Tutto ciò che è definito all'interno dell'interfaccia viene considerato modificatore pubblico. AbstracLa classe t può avere un modificatore di accesso.
Quando usare È preferibile utilizzare l'interfaccia quando varie implementazioni condividono solo la firma del metodo. Gerarchia polimorfica dei tipi di valore. Dovrebbe essere utilizzato quando diverse implementazioni dello stesso tipo condividono un comportamento comune.
Campi dati l'interfaccia non può contenere campi dati. la classe può avere campi dati.
Impostazione predefinita dell'ereditarietà multipla Una classe può implementare numerose interfacce. Una classe eredita solo un assolutotracclasse t.
Implementazione/Attuazione Un'interfaccia è assolutatract in modo che non possa fornire alcun codice. Un addominalitracLa classe t può fornire un codice predefinito completo che dovrebbe essere sovrascritto.
Utilizzo dei modificatori di accesso Non è possibile utilizzare modificatori di accesso per il metodo, le proprietà, ecc. Puoi usare un addominaletracClasse t che contiene modificatori di accesso.
Impiego Le interfacce aiutano a definire le capacità periferiche di una classe. Un addominalitracLa classe t definisce l'identità di una classe.
Campi definiti Nessun campo può essere definito Un addominalitracLa classe t consente di definire sia campi che costanti
Eredità Un'interfaccia può ereditare più interfacce ma non una classe. Un addominalitracLa classe t può ereditare una classe e più interfacce.
Costruttore o distruttori Un'interfaccia non può dichiarare costruttori o distruttori. Un addominalitracLa classe t può dichiarare costruttori e distruttori.
Limite delle estensioni Può estendere qualsiasi numero di interfacce. Può estendere solo una classe o un abstracuna lezione alla volta.
Abstracparola chiave t In un addominaletracLa parola chiave dell'interfaccia t è facoltativa per dichiarare un metodo come assolutotract. In un addominaletracclasse t, gli addominalitracLa parola chiave t è obbligatoria per dichiarare un metodo come assolutotract.
Tipo di classe Un'interfaccia può avere solo abs pubblicitracmetodi t. Un addominalitracLa classe t ha un'astrazione protetta e pubblicatracmetodi t.

Esempio di codice per l'interfaccia e l'abstracttracClasse t in Java

Di seguito è riportato un esempio di codice per creare un'interfaccia e un'astrazione.tracclasse t in Java

Sintassi dell'interfaccia

interface name{
//methods
}

Java Esempio di interfaccia:

interface Pet {
    public void test();
}
class Dog implements Pet {
    public void test() {
        System.out.println("Interface Method Implemented");
    }
    public static void main(String args[]) {
        Pet p = new Dog();
        p.test();
    }
}

AbstracSintassi della classe t

abstract class name{
    // code
}

AbstracEsempio di classe t:

abstract class Shape {
    int b = 20;
    abstract public void calculateArea();
}

public class Rectangle extends Shape {
    public static void main(String args[]) {
        Rectangle obj = new Rectangle();
        obj.b = 200;
        obj.calculateArea();
    }
    public void calculateArea() {
        System.out.println("Area is " + (b * b));
    }
}

Riassumi questo post con: