j'ai juste une petite question qui ne devrait pas rebuter les javaistes
chevronnés que vous êtes : (^^)
J'ai cherché un peu sur le net avat de poster, mais je n'ai trouvé que
des infos sur les classes internes, les classes anonymes etc...
Moi ce que je voudrais savoir, c'est quand on définit une classe dans le
même fichier mais en dehors de toute autre classe, comme ça:
fichier ClasseA.java
public ClasseA extends... {
//code de la classe
}
class ClasseB implements... {
//code de la classe
}
class ClasseC {
//code de la classe
}
Que sont ClasseB et ClasseC exactement ? Quelle est leur visibilité et
quelles sont leur particularité ? Quand est t'il judicieux d'utiliser de
telles classes ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Isammoc
fichier ClasseA.java
public ClasseA extends... { //code de la classe }
class ClasseB implements... { //code de la classe }
class ClasseC { //code de la classe }
Que sont ClasseB et ClasseC exactement ? Quelle est leur visibilité et quelles sont leur particularité ? Quand est t'il judicieux d'utiliser de telles classes ?
AMHA: ce sont des classes uniquement visibles depuis la ClasseA et qui ne peuvent donc pas être appelées par ClasseA.ClasseB si ClasseB était une classe interne de ClasseA.
Cela reste cependant mon avis.
-- Isammoc
fichier ClasseA.java
public ClasseA extends... {
//code de la classe
}
class ClasseB implements... {
//code de la classe
}
class ClasseC {
//code de la classe
}
Que sont ClasseB et ClasseC exactement ? Quelle est leur visibilité et
quelles sont leur particularité ? Quand est t'il judicieux d'utiliser de
telles classes ?
AMHA:
ce sont des classes uniquement visibles depuis la ClasseA et qui ne peuvent
donc pas être appelées par ClasseA.ClasseB si ClasseB était une classe
interne de ClasseA.
class ClasseB implements... { //code de la classe }
class ClasseC { //code de la classe }
Que sont ClasseB et ClasseC exactement ? Quelle est leur visibilité et quelles sont leur particularité ? Quand est t'il judicieux d'utiliser de telles classes ?
AMHA: ce sont des classes uniquement visibles depuis la ClasseA et qui ne peuvent donc pas être appelées par ClasseA.ClasseB si ClasseB était une classe interne de ClasseA.
Cela reste cependant mon avis.
-- Isammoc
Olivier Thomann
Que sont ClasseB et ClasseC exactement ? Quelle est leur visibilité et quelles sont leur particularité ? Quand est t'il judicieux d'utiliser de telles classes ? Ce sont des classes au même titre que la classe ClasseA. Le seul
problème est qu'on compilateur aura du mal à les utiliser en compilant depuis le source ailleurs que dans ce fichier parce qu'il va chercher un fichier ClasseB.java et ClasseC.java.
Un bon conseil. Ne définit jamais plus d'une classe par fichier si jamais tu veux les utiliser ailleurs. -- Olivier
Que sont ClasseB et ClasseC exactement ? Quelle est leur visibilité et
quelles sont leur particularité ? Quand est t'il judicieux d'utiliser de
telles classes ?
Ce sont des classes au même titre que la classe ClasseA. Le seul
problème est qu'on compilateur aura du mal à les utiliser en compilant
depuis le source ailleurs que dans ce fichier parce qu'il va chercher un
fichier ClasseB.java et ClasseC.java.
Un bon conseil. Ne définit jamais plus d'une classe par fichier si
jamais tu veux les utiliser ailleurs.
--
Olivier
Que sont ClasseB et ClasseC exactement ? Quelle est leur visibilité et quelles sont leur particularité ? Quand est t'il judicieux d'utiliser de telles classes ? Ce sont des classes au même titre que la classe ClasseA. Le seul
problème est qu'on compilateur aura du mal à les utiliser en compilant depuis le source ailleurs que dans ce fichier parce qu'il va chercher un fichier ClasseB.java et ClasseC.java.
Un bon conseil. Ne définit jamais plus d'une classe par fichier si jamais tu veux les utiliser ailleurs. -- Olivier
Vincent Cantin
AMHA : ce sont des classes visibles a partir des autres classes et fichiers, mais du meme package.
AMHA : ce sont des classes visibles a partir des autres classes et fichiers,
mais du meme package.
AMHA : ce sont des classes visibles a partir des autres classes et fichiers, mais du meme package.
Frédéric Lachasse
"Thibaut Desmarest" wrote in message news:co2a43$1u37$
Bonjour à tous,
j'ai juste une petite question qui ne devrait pas rebuter les javaistes chevronnés que vous êtes : (^^)
J'ai cherché un peu sur le net avat de poster, mais je n'ai trouvé que des infos sur les classes internes, les classes anonymes etc...
Moi ce que je voudrais savoir, c'est quand on définit une classe dans le même fichier mais en dehors de toute autre classe, comme ça:
fichier ClasseA.java
public ClasseA extends... {
//code de la classe
}
class ClasseB implements... {
//code de la classe
}
class ClasseC {
//code de la classe
}
Que sont ClasseB et ClasseC exactement ?
Des classes comme ClasseA. En fait, le compilateur va génerer ClasseB.class et ClasseC.class en même temps que ClassA.class, comme si ClasseB et ClasseC étaient définies dans des fichiers séparés ClasseB.java et ClasseC.java
Quelle est leur visibilité et quelles sont leur particularité ?
Aucune particularité. Cut & Paste dans des fichiers séparés et le résultat sera le même (dans ce cas, visibilité "package" car ni "public" ni "private").
Quand est t'il judicieux d'utiliser de telles classes ?
A mon avis, jamais. Le principal problème est que les débuggeurs (et autres outils) vont toujours associer un .class avec un .java de même nom, donc quand ils vont exécuter le code dans ClasseB ou ClasseC, ils chercheront le source dans ClasseB.java ou ClasseC.java et non ClasseA.java, et donc ne pourront pas montrer la ligne de programme en cours d'exécution.
-- Frédéric Lachasse - ECP86
"Thibaut Desmarest" <thibaut@cogidis.com> wrote in message
news:co2a43$1u37$1@biggoron.nerim.net...
Bonjour à tous,
j'ai juste une petite question qui ne devrait pas rebuter les javaistes
chevronnés que vous êtes : (^^)
J'ai cherché un peu sur le net avat de poster, mais je n'ai trouvé que des
infos sur les classes internes, les classes anonymes etc...
Moi ce que je voudrais savoir, c'est quand on définit une classe dans le
même fichier mais en dehors de toute autre classe, comme ça:
fichier ClasseA.java
public ClasseA extends... {
//code de la classe
}
class ClasseB implements... {
//code de la classe
}
class ClasseC {
//code de la classe
}
Que sont ClasseB et ClasseC exactement ?
Des classes comme ClasseA. En fait, le compilateur va génerer ClasseB.class
et ClasseC.class en même temps que ClassA.class, comme si ClasseB et ClasseC
étaient définies dans des fichiers séparés ClasseB.java et ClasseC.java
Quelle est leur visibilité et quelles sont leur particularité ?
Aucune particularité. Cut & Paste dans des fichiers séparés et le résultat
sera le même (dans ce cas, visibilité "package" car ni "public" ni
"private").
Quand est t'il judicieux d'utiliser de telles classes ?
A mon avis, jamais. Le principal problème est que les débuggeurs (et autres
outils) vont toujours associer un .class avec un .java de même nom, donc
quand ils vont exécuter le code dans ClasseB ou ClasseC, ils chercheront le
source dans ClasseB.java ou ClasseC.java et non ClasseA.java, et donc ne
pourront pas montrer la ligne de programme en cours d'exécution.
"Thibaut Desmarest" wrote in message news:co2a43$1u37$
Bonjour à tous,
j'ai juste une petite question qui ne devrait pas rebuter les javaistes chevronnés que vous êtes : (^^)
J'ai cherché un peu sur le net avat de poster, mais je n'ai trouvé que des infos sur les classes internes, les classes anonymes etc...
Moi ce que je voudrais savoir, c'est quand on définit une classe dans le même fichier mais en dehors de toute autre classe, comme ça:
fichier ClasseA.java
public ClasseA extends... {
//code de la classe
}
class ClasseB implements... {
//code de la classe
}
class ClasseC {
//code de la classe
}
Que sont ClasseB et ClasseC exactement ?
Des classes comme ClasseA. En fait, le compilateur va génerer ClasseB.class et ClasseC.class en même temps que ClassA.class, comme si ClasseB et ClasseC étaient définies dans des fichiers séparés ClasseB.java et ClasseC.java
Quelle est leur visibilité et quelles sont leur particularité ?
Aucune particularité. Cut & Paste dans des fichiers séparés et le résultat sera le même (dans ce cas, visibilité "package" car ni "public" ni "private").
Quand est t'il judicieux d'utiliser de telles classes ?
A mon avis, jamais. Le principal problème est que les débuggeurs (et autres outils) vont toujours associer un .class avec un .java de même nom, donc quand ils vont exécuter le code dans ClasseB ou ClasseC, ils chercheront le source dans ClasseB.java ou ClasseC.java et non ClasseA.java, et donc ne pourront pas montrer la ligne de programme en cours d'exécution.
-- Frédéric Lachasse - ECP86
vc.spam
Thibaut Desmarest wrote in message news:<co2a43$1u37$...
Bonjour à tous,
j'ai juste une petite question qui ne devrait pas rebuter les javaistes chevronnés que vous êtes : (^^)
J'ai cherché un peu sur le net avat de poster, mais je n'ai trouvé que des infos sur les classes internes, les classes anonymes etc...
Moi ce que je voudrais savoir, c'est quand on définit une classe dans le même fichier mais en dehors de toute autre classe, comme ça:
Que sont ClasseB et ClasseC exactement ? Quelle est leur visibilité et quelles sont leur particularité ? Quand est t'il judicieux d'utiliser de telles classes ?
Bonjour,
Ce sont des classes qui se comportent exactement comme des classes de visibilité "package" qui seraient dans leur propre fichier et dans le même package.
Avantages? Pratiquement aucun. Perso je m'en sers juste temporairement quand je réorganise du code, par exemple quand je morcelle une classe qui à un peu trop gonflé au fur et à mesure de l'évolution des specs... Une fois que c'est fait, je les met dans leur propre fichier.
Inconvénients? Pénible pour retrouver la classe, pénible pour suivre le debuggeer (quand il fonctionne)... Bref, tout ce qu'il y a de pénible avec un fichier fourre-tout...
+
Vincent
Thibaut Desmarest <thibaut@cogidis.com> wrote in message news:<co2a43$1u37$1@biggoron.nerim.net>...
Bonjour à tous,
j'ai juste une petite question qui ne devrait pas rebuter les javaistes
chevronnés que vous êtes : (^^)
J'ai cherché un peu sur le net avat de poster, mais je n'ai trouvé que
des infos sur les classes internes, les classes anonymes etc...
Moi ce que je voudrais savoir, c'est quand on définit une classe dans le
même fichier mais en dehors de toute autre classe, comme ça:
Que sont ClasseB et ClasseC exactement ? Quelle est leur visibilité et
quelles sont leur particularité ? Quand est t'il judicieux d'utiliser de
telles classes ?
Bonjour,
Ce sont des classes qui se comportent exactement comme des classes de
visibilité "package" qui seraient dans leur propre fichier et dans le
même package.
Avantages? Pratiquement aucun. Perso je m'en sers juste temporairement
quand je réorganise du code, par exemple quand je morcelle une classe
qui à un peu trop gonflé au fur et à mesure de l'évolution des
specs... Une fois que c'est fait, je les met dans leur propre fichier.
Inconvénients? Pénible pour retrouver la classe, pénible pour suivre
le debuggeer (quand il fonctionne)... Bref, tout ce qu'il y a de
pénible avec un fichier fourre-tout...
Thibaut Desmarest wrote in message news:<co2a43$1u37$...
Bonjour à tous,
j'ai juste une petite question qui ne devrait pas rebuter les javaistes chevronnés que vous êtes : (^^)
J'ai cherché un peu sur le net avat de poster, mais je n'ai trouvé que des infos sur les classes internes, les classes anonymes etc...
Moi ce que je voudrais savoir, c'est quand on définit une classe dans le même fichier mais en dehors de toute autre classe, comme ça:
Que sont ClasseB et ClasseC exactement ? Quelle est leur visibilité et quelles sont leur particularité ? Quand est t'il judicieux d'utiliser de telles classes ?
Bonjour,
Ce sont des classes qui se comportent exactement comme des classes de visibilité "package" qui seraient dans leur propre fichier et dans le même package.
Avantages? Pratiquement aucun. Perso je m'en sers juste temporairement quand je réorganise du code, par exemple quand je morcelle une classe qui à un peu trop gonflé au fur et à mesure de l'évolution des specs... Une fois que c'est fait, je les met dans leur propre fichier.
Inconvénients? Pénible pour retrouver la classe, pénible pour suivre le debuggeer (quand il fonctionne)... Bref, tout ce qu'il y a de pénible avec un fichier fourre-tout...