Questão 1
Questão
Java kent zowel de == operator als de equals methode om gelijkheid te testen. Welke van de volgende uitspraken zijn waar?
Responda
-
Als equals() niet wordt overriden in klasse A. dan is voor twee instanties a en b van die klasse a.equals(b) niet gedefinieerd.
-
equals() wordt gedefinieerd in Object
-
Als x == y dan ook x.equals(y)
-
Als x.equals(y) dan is ook x == y.
Questão 2
Questão
Polymorfisme wordt gezien als een belangrijk kenmerk in object oriented programming. Welke van de volgende uitspraken is NIET overeenkomstig met het principe van polymorfisme?
Responda
-
Een array kan references bevatten naar objecten van verschillende klassen.
-
Van een klasse kun je verschillende soorten objecten instantieren.
-
Een methode kan objecten van verschillende typen teruggeven (return).
-
Objecten van verschillende klassen kunnen meegegeven worden aan dezelfde methode.
Questão 3
Questão
Er is een klasse waar elke klasse altijd van erft. Welke klasse is dat?
Responda
-
Class
-
Interface
-
Object
-
Abstract
Questão 4
Questão
Noem twee voordelen van het gebruik van ADT's.
Het is makkelijker om op een [blank_start]hoog[blank_end] niveau software te bouwen. Code wordt als gevolg makkelijker te begrijpen en te [blank_start]testen[blank_end].
In vele gevallen zorgt het voor een hogere graad van [blank_start]productiviteit[blank_end].
Responda
-
testen
-
hoog
-
productiviteit
Questão 5
Questão
Welke van de volgened uitspraken is/zijn waar?
1. Een recursieve functie meot altijd een resultaat naar de caller terug geven.
2. Een recursieve functie roept altijd zichzelf direct of indirect aan.
Responda
-
1 waar, 2 waar
-
1 onwaar, 2 waar
-
1 waar, 2 onwaar
-
1 onwaar, 2 onwaar
Questão 6
Questão
Bekijk de volgende methode:
public int fun(int n, int k){
if (k == 0){
return n;
} else {
return fun(k, n % k);
}
}
Wat is het resultaat van de aanroep fun(40, 16)?
Questão 7
Questão
Het uitrekenen van een vermenigvuldiging a * b kan recursief worden gedefinieerd.
Welke definitie is de juiste?
Responda
-
a * 1 = a, en a * b = a * (b - 1) + b
-
a * 0 = a, en a * b = a * (b - 1) + b
-
1 * b = b, en a * b = (a - 1) * b + b
-
a * 0 = 0, en a * b = a * (b + 1) + a
Questão 8
Questão
Wat is de uitvoer van de aanroep print(2) met de volgende definitie van de methode print()?
void print(int i) {
for (int t = 0; t < i; t++)
System.out.println(i);
if (i > 1){
System.out.print("Y");
print(i-1);
}
for (int t = 0; t < i; t++)
System.out.print(i);
}
Answer: [blank_start]22Y1122[blank_end]
Questão 9
Questão
Bekijk de volgende functie:
publci void fun(int a, int b){
if (a < b) {
fun(a + 1, b);
}
System.out.println(a + "-" + b):
}
Wat is de resultaat van de aanroep fun(1,5)?
[blank_start]5-5[blank_end]
[blank_start]4-5[blank_end]
[blank_start]3-5[blank_end]
[blank_start]2-5[blank_end]
[blank_start]1-5[blank_end]
Questão 10
Questão
Bij de implementatie van een Linked List zijn een Link klasse en een LinkList klasse gemaakt. De Link klasse heeft de variabelen:
String name;
Link next;
De LinkList klasse heeft de variabelen:
Link first;
Link last;
Hier is sprake van een:
Responda
-
Iterator List
-
Double-Ended List
-
Doubly Linked List
-
Singly Linked List
Questão 11
Questão
De interface java.util.Iterator<Item> belooft een aantal methodes. Welke zijn dat?
Responda
-
boolean isEmpty();
-
Item next();
-
boolean hasNext();
-
public void nextItem();
Questão 12
Questão
Wat is de uitvoer van deze LinkedListApp? Wat wordt er getoond op het uitvoerscherm?
/* class Link */
class Link {
public int iData;
public int dData;
public Link next;
}
public Link(int id, int dd) {
iData = id;
dData = dd;
}
public void displayLink(){
System.out.print(dData);
}
class LinkList {
private Link first;
public LinkList(){
first = null;
}
public void insertFirst(int id, int dd) {
Link newLink = new Link(id, dd);
newLink.next = first
first = newLink;
}
public void displayList()
Link current = first;
while (current != null){
current.displayLink();
current = current.next;
}
}
}
class LinkApp {
public static void main(Stringp[ args) {
LinkList theList = new LinkList();
theList.insertFirst(1, 3);
theList.insertFirst(2,7);
theList.insertFirst(3, 2);
theList.insertFirst(4, 9);
}
}
Questão 13
Questão
De acties van een gebruiker in een tekstverwerkingsprogramma, die met een undo button ongedaan kunnen worden gemaakt, kun je het este opslaan en verwerken met:
Responda
-
Stack
-
Queue
-
Priority Queue
-
Deque
Questão 14
Questão
Gegeven een stack Stack<Item> met methoden void push(Item) en Item pop().
We willen aan deze class een methode Item peek() toevoegen.
Deze methode meoet het bovenste element van de stack terug geven zonder het er vanaf te halen.
Item peek() {
...
}
Welke code moet op de stippeltjes? Maak gebruik van de methoden push en pop.
Ga er vanuit dat de stack niet leeg is.
[blank_start]stack.push(last);[blank_end]
Questão 15
Questão
Wat is de output van de volgende code:
int[] list = {3, 1, 4, -1, -1, 1, 5, -1, 9};
Stack<Integer> stack = new Stack<Integer>();
for (int number : list) {
for (int number : list) {
if (number != -1){
stack.push(number);
} else {
System.out.print(stack.pop());
}
}
Answer: [blank_start]415[blank_end]