Font size
WorksheetsΔιεπαφές και Αφηρημένες Κλάσεις
Total questions: 30
Worksheet time: 16mins
Μια αφηρημένη κλάση μπορεί να έχει κανονικές (μη-αφηρημένες) μεθόδους.
Σωστό
Λάθος
Μπορούμε να δημιουργήσουμε αντικείμενα απευθείας από μια αφηρημένη κλάση.
Σωστό
Λάθος
Μια κλάση μπορεί να υλοποιεί πολλαπλές διεπαφές.
Σωστό
Λάθος
Οι μέθοδοι σε μια διεπαφή μπορούν να έχουν σώμα υλοποίησης, εκτός αν είναι default ή static.
Σωστό
Λάθος
Μια κλάση μπορεί να κληρονομήσει από πολλαπλές αφηρημένες κλάσεις.
Σωστό
Λάθος
Οι διεπαφές μπορούν να έχουν πεδία που δεν είναι static και final.
Σωστό
Λάθος
Μια αφηρημένη κλάση πρέπει να έχει τουλάχιστον μία αφηρημένη μέθοδο.
Σωστό
Λάθος
Οι default μέθοδοι σε μια διεπαφή πρέπει να υλοποιηθούν από τις κλάσεις που την υλοποιούν.
Σωστό
Λάθος
Μια κλάση που επεκτείνει μια αφηρημένη κλάση πρέπει να υλοποιήσει όλες τις αφηρημένες μεθόδους.
Σωστό
Λάθος
Οι διεπαφές μπορούν να κληρονομήσουν από άλλες διεπαφές.
Σωστό
Λάθος
Ποια λέξη-κλειδί χρησιμοποιείται για τη δήλωση μιας διεπαφής;
class
interface
abstract
implements
Πώς δηλώνεται μια κλάση που υλοποιεί μια διεπαφή;
extends Interface
implements Interface
abstract Interface
interface Class
Τι από τα παρακάτω ΔΕΝ μπορεί να περιέχει μια διεπαφή;
Static μεθόδους
Default μεθόδους
Private πεδία
Αφηρημένες μεθόδους
Ποιο είναι το επίπεδο πρόσβασης των μεθόδων σε μια διεπαφή αν δεν καθοριστεί;
private
protected
public
default
Μια αφηρημένη κλάση μπορεί να:
Έχει κατασκευαστή
Δημιουργήσει αντικείμενα
Υλοποιήσει πολλαπλές κλάσεις
Έχει ιδιωτικές αφηρημένες μεθόδους
Ποια είναι η σωστή σύνταξη για τη δήλωση μιας αφηρημένης μεθόδου;
abstract void method();
void abstract method();
abstract void method() {}
void method() abstract;
Τι συμβαίνει αν μια κλάση δεν υλοποιήσει όλες τις μεθόδους μιας διεπαφής;
Σφάλμα μεταγλώττισης
Η κλάση πρέπει να δηλωθεί ως abstract
Προειδοποίηση μεταγλώττισης
Σφάλμα χρόνου εκτέλεσης
Ποια από τις παρακάτω δηλώσεις είναι σωστή;
interface A extends B, C
interface A implements B, C
class A implements B, extends C
class A extends B, implements C
Τι είναι αδύνατο να γίνει με μια διεπαφή;
Να έχει static μεθόδους
Να έχει default μεθόδους
Να έχει private μεταβλητές
Να έχει abstract μεθόδους
Ποια είναι η διαφορά μεταξύ αφηρημένης κλάσης και διεπαφής;
Μόνο η διεπαφή μπορεί να έχει υλοποιημένες μεθόδους
Μόνο η αφηρημένη κλάση μπορεί να έχει κατασκευαστή
Μόνο η διεπαφή μπορεί να κληρονομηθεί πολλαπλά
Μόνο η αφηρημένη κλάση μπορεί να έχει static μεθόδους
Η λέξη-κλειδί (a) χρησιμοποιείται για τη δήλωση αφηρημένων κλάσεων.
Μια κλάση χρησιμοποιεί τη λέξη-κλειδί (a) για να υλοποιήσει μια διεπαφή.
Η λέξη-κλειδί (a) χρησιμοποιείται για τη δήλωση μιας διεπαφής.
Μια κλάση χρησιμοποιεί τη λέξη-κλειδί (a) για να κληρονομήσει από μια άλλη κλάση.
Οι μέθοδοι σε μια διεπαφή είναι εξ ορισμού ________ και _______
(a)
Η λέξη-κλειδί (a) χρησιμοποιείται για μεθόδους που δεν επιστρέφουν τιμή.
Οι μεταβλητές σε μια διεπαφή είναι εξ ορισμού ________ και ________.
static
final
Η λέξη-κλειδί (a) χρησιμοποιείται για να δηλώσουμε μια μέθοδο με υλοποίηση σε μια διεπαφή.
Η λέξη-κλειδί (a) χρησιμοποιείται για μεθόδους και μεταβλητές που ανήκουν στην κλάση.
Η λέξη-κλειδί (a) χρησιμοποιείται για μεθόδους και μεταβλητές που είναι προσβάσιμες μόνο μέσα στην κλάση.
