Hoe te voeren discussie in JAVA
Naar mijn mening Discussie is de mooiste eigenschap van Java en ik herinner me toen ik begonnen met het leren JAVA in een van de programmering klasse in India hoe belangrijke discussie was portret en hoeveel nadruk gelegd op duidelijk begrip van multi-threading. Het is inderdaad nog steeds populair en een van de meest gewilde vaardigheid in JAVA.
In deze kern java les Ik zal mijn ervaring op andere manier van uitvoering Draad in Java te delen; Dit is ook een zeer gemeenschappelijke kern java interview vraag en meestal vroeg tijdens junior niveau java interview.There zijn twee manieren om de uitvoering van threading in Java 1) Door de uitbreiding van java.lang.Thread klasse, OR2) Door de implementatie van java.lang.Runnable interface.
Voordat we ingaan op implementatie details Ik wil dekken wanneer we thread? dus gebruiken we draad als we willen een deel van de code wordt parallel uitgevoerd en zetten we die code in run () methode van een van beide klasse Thread of Runnable interface.Actually methode public void run () wordt gedefinieerd in Runnable interface en sinds java.lang. draad klasse implementeert Runnable-interface automatisch wordt deze methode.
Ik herinner me door eerst Java multi-threading voorbeeld dat een animatie programma waarin meerdere threads werden gebruikt in Applet om animatie woorden vallen van links boven, midden en rechts bovenaan de pagina te maken was. Dat was behoorlijk spannend op dat moment, want tot dan ik weet alleen programma welke ingang het interview vraag "neemt van opdrachtprompt en afdruk op commando prompt.
So nu Welke manier van uitvoering Discussie is beter? Uitbreiding discussie klasse of uitvoering Runnable methode? In mijn mening uitvoering Runnable is beter omdat in Java kunnen we alleen verlengen één klasse, dus als we breiden discussie klasse kunnen we niet extendany andere klasse, terwijl door het implementeren van Runnable-interface hebben we nog die optie openen met ons.
Ten tweede reden die zin voor mij is meer op OOPS begrip volgens OOPS als we uit te breiden een klasse bieden wij een aantal nieuwe functie of functionaliteit, dus als het doel is gewoon om de methode run () te gebruiken om code te definiëren is het beter om Runnable interface.till gebruiken dan hebben we zojuist een thread , draad zal niet starten totdat u de methode start () van java.lang.Thread klasse noemen.
Als we beginnen te bellen () methode Java Virtual Machine () methode van die klasse dr