| Home  | Casa  | Hardware  | Networking  | Programmazione  | Software  | Domanda  | Sistemi  |   
Programmazione  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Java Programming

  • Programmazione Javascript

  • PHP /MySQL Programmazione

  • Perl Programming

  • Python Programming

  • rubino Programmazione

  • Nozioni di base di Visual Programming
  •  
    Conoscenza Informatica >> Programmazione >> Java Programming >> Content
    Che cosa è l'ereditarietà multipla in Java
    ? Sviluppatori Java progettato da zero per agire come un linguaggio di programmazione orientato agli oggetti completo . A causa di questo , i concetti integrati per la programmazione orientata agli oggetti diventano molto importante nella funzionalità di base di Java . In particolare , i concetti di ereditarietà delle classi ( e le problematiche che sorgono classe form eredità) sono preoccupazioni fondamentali per il programmatore Java . Uno di questi problemi , l'ereditarietà multipla, può essere aggirato con una comprensione di come funziona l'ereditarietà , e come utilizzare interfacce Java . OOP ed ereditarietà

    Object Oriented Programming utilizza il concetto di ereditarietà per estendere le funzionalità degli oggetti . Considerare quando un programmatore crea un oggetto ; lei può poi scoprire che lei deve creare un oggetto molto simile con solo lievi differenze ( forse per estendere la funzionalità dell'oggetto precedente in un nuovo contesto ) . E 'qui che entriamo in gioco l'ereditarietà Un oggetto che un programmatore "deriva " da un altro oggetto "base" eredita i metodi e le variabili di quella classe , e possono quindi aggiungere ulteriori funzionalità ad esso ( come nel seguente esempio Java ) :

    class sfera pubblica {

    raggio public int ;

    }

    classe sfera pubblica si estende Sphere {

    color corda pubblico ; //sfera aggiunge la variabile "colore" , ma anche utilizza il "raggio " variabile

    }
    ereditarietà multipla

    Ad un certo punto , un programmatore potrebbe diventare tentazione per derivare una singola classe da più classi . Questo è noto come " l'ereditarietà multipla " e mentre apparentemente utile , può causare problemi , come ad esempio il famigerato " problema di diamante . " Il problema diamante si verifica quando due classi ereditano dalla stessa classe ( come la classe B e C che deriva dalla classe A ) , mentre un'altra classe (D ) eredita da entrambi B e C. Quando viene creato un oggetto di D , il sistema tratta come un tipo della classe base (classe " Ball" è una "sfera ", per esempio ) . Nel problema di diamante , il sistema non può determinare cosa decisamente di classe D è ( sia essa tipo ABD o tipo ACD ? ) Che causa problemi .
    Java e Ereditarietà multipla

    a causa dei problemi con l'ereditarietà multipla , Java non permette l'ereditarietà multipla . Tuttavia, in realtà derivanti classi di più classi di base può essere realizzato in maniera sicura attraverso l'utilizzo di " interfacce ". Un'interfaccia è simile a una classe , eccetto che definisce soltanto la struttura della classe ma non il codice effettivo . Una classe base che implementa un'interfaccia non necessariamente " ereditare " la funzionalità dell'interfaccia : promette solo usare la sua struttura . Perché una classe che implementa una interfaccia non eredita da un'altra classe ( e questo non è un tipo di classe base ) , quindi il programmatore può implementare più interfacce utilizzando la stessa classe
    Esempio : . Ereditarietà e interfacce

    l'esempio seguente mostra la differenza tra ereditarietà e un'interfaccia . È importante sottolineare che una classe che eredita da un altro accesso guadagni alla classe di base perché diventa essenzialmente un tipo di tale classe ( come in " palla " e classi "sfera" ) . Una classe che implementa un'interfaccia promette solo per attuare la struttura dell'interfaccia : non è un tipo di interfaccia che :

    interfaccia di base {

    int Doppia Camera ( ) ; //Avviso: no codice attuale viene definito nell'interfaccia

    }

    classe B pubblica implementa di base {

    public int a;

    public int Doppia Camera ( ) //classe B deve definire la " Doppia Camera ( ) " metodo per implementare "Basic"

    {return a * 2; } }



    Previous :

    next :
      Articoli Correlati
    ·Come per scorrere le chiavi nella HashMap in Java 
    ·Come combinare le classi in Java 
    ·Come fare il confine invisibile su un gruppo JFace 
    ·Eccezioni Java Tutorial 
    ·Come aggiornare il nome della colonna di una JTable 
    ·Come faccio a eseguire jar Java Con Windows Vista 
    ·Come rimuovere punteggiatura in una stringa Java 
    ·Come Classi Port Java 
    ·Come inserisco sottoprogetti in NetBeans 
    ·Come fare un'animazione utilizzando Java 
      Articoli in evidenza
    ·Come sincronizzare alla Cronologia delle modifiche 
    ·Come fare un form in Java 
    ·Come cancellare una DropDownList 
    ·Come trovare un numero di porta del sistema con Java 
    ·Come creare un percorso relativo a Java 
    ·Come esportare i dati di accesso a SQL 
    ·Python Metodi speciali 
    ·Come fare una GUI in C 
    ·Come aggiungere una riga nel DataGridView 
    ·Come cancellare DataGridView in VBnet 
    Copyright © Conoscenza Informatica http://it.wingwit.com