prog3Java Flashcards

1
Q

Vad är ett API?

A

Aplication programming interface, kallas också klassbibliotek. Gör att vi får tillgång till flera andra klasser genom att importera de.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Förklara kortfattat vad JFrame och JPanel är, och vad metoden add() gör.

A

JFrame skapar ett fönster på skärmen
JPanel skapar en målarduk och måste ligga i framen för att synas
frame.add(panel) binder panelen till framens innehåll

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Förklara vad paintComponent() gör.

A

En metod som används för att rita eller rendera grafik. Vi anropar den oftast med paintComponent(Graphics g).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Förklara vad repaint() gör. Hur kommer det sig att du kan anropa en sådan metod fast du inte har skrivit den själv?

A

repaint() låter oss måla om bilden, vi kan anropa den eftersom repaint() är en metod definerad i ett annat klass bibliotek (Swing)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Vad är en layout manager och hur startas den?

A

Layout managers är objekt, den skapas genom att vi instansierar klassen, genom att använda new. tex
myPanel.setLayout(new BorderLayout());

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Förklara vad som menas med en underklass, överklass och arv. Hur uttrycker man i java att en klass ska vara en underklass? Vad means med “single inheritance”?

A

En överklass är den befintliga klassen som ger egenskaper och beteenden som kan ärvas av en annan klass.

En underklass är en ny klass som ärver egenskaper och beteenden från en befintlig överklass. Det är den “lägre” klassen i hierarkin.

Arv är den mekanism som tillåter en klass att ärva egenskaper och beteenden från en annan klass. I Java används nyckelordet extends för att ange att en klass är en underklass av en annan klass.

“Single Inheritance” betyder att en klass kan ärva från högst en enda överklass. Java stöder endast enkel arv, vilket innebär att en klass inte kan ärva från flera överklasser samtidigt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Vad innebär en override? Om man har gjort en override, kan man ändå köra överklassens metod?

A

Override innebär att en underklass kan använda en egen implementation av en metod som finns i dess överklass. När vi använder override ger vi en ny implementation i underklassen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Hur gör du för att omdefiniera metoden paintComponent() i klassen JPanel? Hur kommer det sig att du ska skriva en sådan metod och sedan aldrig anropa den från din kod? Parametern till paintComponent() är ett objekt ur klassen Graphics. Hur används detta objekt i koden för paintComponent()?

A

Vi behöver skapa en klass som ärver från JPanel mha extends och sen overridear vi den genom att skriva @Override och sen vår egna metod.

Vi behöver aldrig anropa den från vår kod för att det görs i Swing när vi vill rita något som tex g.drawRect()

Objektet är parametern som skickas till paintComponent().
Vi kommer använda parametern Graphics g för att sedan kunna använda g.drawLine().

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Förklara koordinatsystemet i javas grafik.

A

(0,0) uppe i vänster. Om vi ritar en cirkel med kordinaterna (x,y) så kommer cirkelns över vänstra sida att gå igenom dessa punkter.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Vad är magiska nummer och varför ska man inte ha dem?

A

Magiska nummer är när vi i vår kod gör beräkningar tex med siffror, vi ska istället deklarera dessa siffror som variabler och använda variabelnamnen istället, detta gör vi för att man senare enkelt sa se vilka siffror det är vi faktiskt använder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Vad är omfaktorisering och när ska man göra det?

A

Omfaktorisering är när vi delar upp en metod i flera mindre metoder, tex är det dumt att lägga all målning i en och samma metod.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Vad är (i mycket grova drag) ett interface och hur används det i java?

A

Interface skrivs som class klassnamn implements interface där interface är en eller flera interfaces. Det betyder att objekten som fås när man instansierar klassen har behörighet till särskilda ändamål tex actionlistener ger behörighet att ta emot timer signaler.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Hur skriver du en bit kod som ska utföras varje sekund?

A

Mha metoden actionPerformed(actionEvent e), i denna metod skriver vi det som ska ske vid ett visst tidsintervall. Det kan vara repaint() varje sekund tex.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly