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.
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));
}
}

