Hvordan at gennemføre Tråd i JAVA
Efter min mening Tråd er den mest vidunderlige træk ved JAVA, og jeg kan huske, da jeg begyndte at lære JAVA i en af programmering klasse i Indien, hvor vigtig Tråd var portræt, og hvor meget vægt gives på en klar forståelse af multi threading. Det er faktisk stadig populære, og en af de mest eftertragtede færdighed i JAVA.
In denne kerne java tutorial vil jeg dele min erfaring på forskellig måde at implementere Tråd i Java; dette er også en meget fælles kerne java interview spørgsmål og spurgte meste i løbet junior niveau java interview.There er to måder at gennemføre gevindskæring i JAVA 1) Ved at udvide java.lang.Thread klasse, OR2) Ved at implementere java.lang.Runnable interface. Før vi går i detaljer med gennemførelsen jeg gerne dække når vi bruger tråd? så vi bruger tråd, hvis vi ønsker en del af koden eksekveres parallelt, og vi sætte det kode inde run () metode enten Tråd klasse eller Runnable interface.
Actually public void run () metode er defineret i Runnable interface og siden java.lang. Tråd klasse implementerer Runnable grænseflade det bliver denne metode automatisk. Jeg husker ved først at java multi threading eksempel, som var en animation program, hvor flere tråde blev brugt i Applet til at skabe animation af ord falder ned fra øverste venstre, midterste og øverst til højre på siden. Det var temmelig spændende på det tidspunkt, fordi indtil da jeg kun kender program, som tager input fra kommandoprompten og udskrifter på kommando prompt.
So nu interviewet spørgsmålet "Hvilken måde at gennemføre Tråd er bedre? Udvidelse Tråd klasse eller gennemføre Runnable metode? I min mening om gennemførelse Runnable er bedre, fordi i Java kan vi kun forlænge en klasse, så hvis vi udvider Tråd klasse kan vi ikke extendany anden klasse, mens ved at gennemføre Runnable grænseflade vi stadig har denne mulighed åben med os.
Anden grund, som giver mening for mig, er mere på OOPS koncept ifølge OOPS hvis vi udvider en klasse, vi give nogle nye funktion eller funktionalitet, så hvis formålet er bare at bruge run () metode til at definere kode dens bedre at bruge Runnable interface.till så har vi netop oprettet en tråd vil Tråd ikke starte, før du ringer til start () metode java.lang.Thread klasse. Når vi kalder start () metode Java Virtual Machine udføre run () metode af denne Thread klassen i andet end at ringe tråd separat tråd.
Nogen gæt hvad der vil ske, hvis vi kalder run () metoden direkte i stedet for at