Chapter 4 Flashcards

1
Q

Quel est l’ordre de déclaration d’une méthode ?

A

Access Modifiers (public, protected, private, default (package private) (non keyword)

Optional specifiers (static, abstract, final, synchronized, native, strictfp)

Return type

Method name (letters, numbers, $, _)

Parameter list

Optional exception list

Method body

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

On importe comment et quoi avec les statics import ?

A

On importe les statics member pas les classes !

import static java.uyil.Arrays

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

Qu’est ce qu’on a le droit de changer quand on overload une méthode ?

A

On doit changer le parameter list.

On a le droit de changer le return type seulement si on change le parameter list

Deux méthodes avec le même parameter list dans la même classe, ne compile pas !

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

Peut on call une méthode avec un enfant de paramètres ?

A

Oui,

public void fly(Object o)

fly(10); // work

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

L’ordre d’initialisation ? Dans quel cas elle s’applique ? Quels sont les autres cas ?

A

1 - Initialize the superclass
2 - static variable déclaration and static initializers in the order
3 - instance variable déclaration and instance initializers in the order
4 - the constructor

Les 4 règles s’appliquent dans le cas où on a un new (nouvelle instance)

Les 2 premières règles se fait si on fais référence à la classe (on appel une méthode static)

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

Qu’est ce qu’une encasulating data class ?

A

C’est une classe qui ne possède que des fields privé et qu’o n’a que des méthodes pour les accéder ou modifier

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

Comment accéder à une static method ?

A
  • avec Class.methode()
  • depuis une référence du type ou sous-type de la classe même si elle a une valeur null
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Si j’ai :

public void fly(int [] lengths) {}
public void fly(int… lengths) {}

Dans la même classe, est ce que ça compile ?

A

Non car les varargs sont considérés comme des tableaux pour Java et on a pas le droit de overload avec la même signature

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

Quand est ce qu’on peut initialiser une final ? Et combien de fois ?

A

On peut initialiser une final dans :
- à la déclaration
- dans un initializer
- dans un constructeur

Une seule fois !

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