prog4Java Flashcards
Förklara hur ett Exception kan uppstå och vad som då händer
Ett exception uppstår om något störs under körning av programmet det finns bland annat Checked Exceptions vilka måste hanteras vid kompileringstid, FileNotFoundException, IOException dessa kräver try catch.
Unchecked Exceptions behöver inte hanteras vid kompileringstid. NullPointerException, ArrayIndexOutOfBoundsException .
Jämför Events och Exceptions: vad ger upphov till dem, vart i koden kommer man, och vad händer om de inte tas om hand någonstans?
Events och exceptions hanterar olika aspekter av programkörning. Events hanterar händelser och användarsignaler, medan exceptions hanterar felaktiga förhållanden och fel under körning.
Events: Användarinteraktion, systemhändelser, kan påverka till buggar men inte kritiska problem.
Exceptions: Programmeringsfel, kan avbryta programmet och leda till svårigheter att diagnostisera problem.
Kan man skriva en Exception Handler som tar emot olika Exceptions på olika sätt?
Ja med en try catch fast med flera catch, tex NullPointerException, IOException etc.
Vad är ett checked exception?
Checked Exceptions vilka måste hanteras vid kompileringstid, FileNotFoundException, IOException dessa kräver try catch.
I vilka lägen, om några, kommer ett finally-block inte att utföras?
I System.exit(0) och om vi hamnar i en oändlig loop, tex lägger en return i try satsen och vi får ett Exception.
Varför är det viktigt att resurser stängs när de inte används längre, och hur kan man säkerställa detta i java med try-with-resources?
För att frigöra resurser,
FileWriter output = new FileWriter
output.close();
Vad betyder throws i en metoddeklaration och varför måste man ibland skriva detta?
throws är en del av Java-metoddeklarationen och används för att ange att en metod kan kasta ett eller flera specifika typer av exceptions. Metoden ska sen ha kod som kan kasta ens Exception.
Vad är en ström (stream) och vad kan den användas till? Hur läser och skriver man från och till en ström? Varför finns det olika slags strömmar?
En ström möjliggör överföring mellan källor och destinationer. Används för nätverkskommunikation till exempel. Kan vara byte strömmer eller teckenströmmar. Finns flera olika:
FileInputStream, FileOutputStream, BufferedReader, och BufferedWriter
Vad innebär downcasting och varför behöver man ibland göra det?
Downcasting i Java innebär att konvertera en referens från en överordnad typ till en underordnad typ. Det krävs ibland när du behöver använda specifika metoder eller egenskaper som bara finns i den underordnade klassen.
Vad är en IP-adress? Vad är en port?
En ip adress är en unik numerisk identifierare som tilldelas varje enhet som är ansluten till ett datornätverk som använder Internetprotokoll för kommunikation.
En port är en sifferidentifierare som används för att specificera en viss process till vilken data ska skickas eller från vilken data ska tas emot på en enhet i ett datornätverk.
Portnumret tillsammans med en IP-adress skapar en unik adress för att skicka och ta emot data över nätverket.
Förklara skillnaden mellan Socket och ServerSocket. Hur använder man dem?
Ensocket används för att skapa en anslutning mellan två enheter över nätverket.
En ServerSocket används för att lyssna på inkommande anslutningar från klienter.
Väntar på en specifik port och skapar en ny Socket för varje accepterad anslutning.
Klienter använder en Socket för att ansluta till en server.
Servrar använder en ServerSocket för att lyssna på och acceptera inkommande anslutningar.
Vad är en tråd?
En tråd (thread) i Java refererar till en exekveringssekvens eller en lättviktig process som existerar inom ett program. Gör att vi kan köra olika delar av ett program samtidigt.
I förra biljardprojektet, när simuleringen kör, vilken tråd är det då som används?
I de flesta Java-gränssnittsbaserade program är det huvudsakliga gränssnitts-(UI-)tråden som används när simuleringen körs. Detta är den tråd som är ansvarig för att hantera användargränssnittet och svara på användarinteraktioner.