Android Java Programming werkt door middel van een concept van het doorgeven van berichten , waarin de draden van de uitvoering in een programma pas berichten van uitvoerbare code tussen elkaar om specifieke taken uit te voeren of de communicatie te onderhouden tussen de verschillende delen van de aanvraag . De " Handler " klasse , samen met zijn " MessageQueue " class , organiseren , uitvoeren en verzenden berichten en uitvoerbare voorwerpen door de code . Elke draad in een Android- programma kan een handler klasse voor het enige doel van de behandeling van gegevens en berichten. Android Runnable Class De " Runnable " klasse vertegenwoordigt een interface voor de " Thread " class . Klassen kunnen de Runnable klasse te implementeren , zodat programma's instanties van die klasse kan uitvoeren als draaiende threads . Met de interface Runnable betekent dat een klasse gelijktijdig kunnen lopen met andere klassen , zodat meerdere exemplaren van uitmuntende uitvoering kan op hetzelfde moment . Android -programma's , door middel van Handlers , kunnen uitvoerbare objecten passeren als berichten . Android Berichtklasse De Android " Message " class faciliteert het doorgeven van gegevens binnen de Android- code . Een object bericht bevat een willekeurige data object dat kan worden doorgegeven aan een Handler object , samen met programmeur gedefinieerde informatie over de aard van de gegevens in het object . Bericht objecten bevatten ook methoden om gegevens uit andere bronnen te verkrijgen , die als een soort van " passing " medium waarmee gegevens en meta- gegevens programmatisch kunnen worden doorgegeven tussen programma's en Handler objecten. < Br > Android MessageQueue en Looper klassen de " MessageQueue " en " Looper " klassen dienen als interfaces voor de verwerking van berichten en gegevens in een draad van executie . De MessageQueue en Looper lessen berichten verzonden naar een enkele draad van executie . Deze berichten worden vertegenwoordigd door objecten van de klasse Message . De MessageQueue houdt een lijst van deze Boodschap objecten , terwijl de Looper klasse cycli door hen voor de verwerking van de huidige draad van executie . Handlers Handler -object maakt het programmeur om berichten en uitvoerbare objecten uit MessageQueues geassocieerd met een draad van executie verzenden en ophalen . Bericht objecten uit andere threads , of uitvoerbare draden naar de huidige draad van uitvoering , worden aan de Handler verzonden via de MessageQueue , en uitgevoerd door de handler . Elke uitgaande berichten zal gaan door de Handler objecten op hun weg naar de MessageQueue . Elke draad van de uitvoering in een programma zal een Handler object ermee verbonden hebben , samen met een enkele MessageQueue . Hoe de Handler werken De instantie Handler in een thread zal Runnable en Message objecten ontvangen via de MessageQueue . Methoden worden vervolgens opgeroepen door de programmeur om specifieke objecten te behandelen . Bijvoorbeeld , de "post " methode duurt Runnable voorwerpen en zet ze in het MessageQueue . Ook de " sendMessage " methoden te bereiken hetzelfde met Message objecten. Variaties van deze methoden opgeven wanneer MessageQueue processen een Handler 's Runnable of Message objecten.
|