débutant: probleme de comprehension (les constructeurs)
1 réponse
Georges Rouvrais
bonsoir,
y aurait il sur ce forum pour m'expliquer les sorties t1 et t2 en regard
de l'appel de l'un ou l'autre des constructeurs. Dans le main quels sont
constructeurs appelées (je pense que c'est le premier pour t1 et le second
pour t2)? Je comprends la premiere sortie mais pour la 2,3 et 4 je nage :
pouvez vous m'expliquer le pourquoi des ces sorites?
Merci de votre aide.
Cordialemnent,
Georges.
Voici le bout de code:
public class Time
{
// private member variables
private int Year;
private int Month;
private int Date;
private int Hour;
private int Minute;
private int Second = 30;
// public accessor methods
public void DisplayCurrentTime()
{
System.DateTime now = System.DateTime.Now;
System.Console.WriteLine(
"\nDebug\t: {0}/{1}/{2} {3}:{4}:{5}",
now.Month, now.Day, now.Year, now.Hour, now.Minute,
now.Second);
//constructors
public Time(System.DateTime dt)
{
Year = dt.Year;
Month = dt.Month;
Date = dt.Day;
Hour = dt.Hour;
Minute = dt.Minute;
Second = dt.Second; // explicit assignement
}
public Time(int Year, int Month, int Date, int Hour, int Minute)
{
this.Year = Year;
this.Month = Month;
this.Date = Date;
this.Hour = Hour;
this.Minute = Minute;
}
}
public class Tester
{
static void Main()
{
System.DateTime currentTime = System.DateTime.Now;
Time t = new Time(currentTime);
t.DisplayCurrentTime();
Time t2 = new Time(2005, 11, 18, 11, 45);
t2.DisplayCurrentTime();
System.Console.WriteLine("Appuyer sur une touche pour quitter le
programme svp !");
System.Console.ReadKey();
}
}
--
Les dysfonctionnements les plus courants d'un pc sont souvent causés par
le truc entre la chaise et le clavier.....
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
Marc Thivolle
Georges,
Le constructeur appelé est celui dont la signature (le nombre de paramètres et leurs types) correspond à l'appel.
Quelles sont les sorties dont tu parles ?
Ta méthode DisplayCurrentTime affiche les informations concernant la date et l'heure courante et non l'objet instancié.
A part çà appeler une classe Time c'est un peu gonflé car source de confusion.
Marc
"Georges Rouvrais" a écrit dans le message de news:
bonsoir,
y aurait il sur ce forum pour m'expliquer les sorties t1 et t2 en regard de l'appel de l'un ou l'autre des constructeurs. Dans le main quels sont constructeurs appelées (je pense que c'est le premier pour t1 et le second pour t2)? Je comprends la premiere sortie mais pour la 2,3 et 4 je nage : pouvez vous m'expliquer le pourquoi des ces sorites?
Merci de votre aide.
Cordialemnent, Georges.
Voici le bout de code:
public class Time { // private member variables private int Year; private int Month; private int Date; private int Hour; private int Minute; private int Second = 30;
// public accessor methods public void DisplayCurrentTime() { System.DateTime now = System.DateTime.Now; System.Console.WriteLine( "nDebugt: {0}/{1}/{2} {3}:{4}:{5}", now.Month, now.Day, now.Year, now.Hour, now.Minute, now.Second);
//constructors public Time(System.DateTime dt) { Year = dt.Year; Month = dt.Month; Date = dt.Day; Hour = dt.Hour; Minute = dt.Minute; Second = dt.Second; // explicit assignement
} public Time(int Year, int Month, int Date, int Hour, int Minute) { this.Year = Year; this.Month = Month; this.Date = Date; this.Hour = Hour; this.Minute = Minute; } } public class Tester { static void Main() { System.DateTime currentTime = System.DateTime.Now; Time t = new Time(currentTime); t.DisplayCurrentTime();
Time t2 = new Time(2005, 11, 18, 11, 45); t2.DisplayCurrentTime(); System.Console.WriteLine("Appuyer sur une touche pour quitter le programme svp !"); System.Console.ReadKey(); } }
-- Les dysfonctionnements les plus courants d'un pc sont souvent causés par le truc entre la chaise et le clavier.....
Georges,
Le constructeur appelé est celui dont la signature (le nombre de paramètres
et leurs types) correspond à l'appel.
Quelles sont les sorties dont tu parles ?
Ta méthode DisplayCurrentTime affiche les informations concernant la date et
l'heure courante et non l'objet instancié.
A part çà appeler une classe Time c'est un peu gonflé car source de
confusion.
Marc
"Georges Rouvrais" <georges.rouvrais@club-internet.fr> a écrit dans le
message de news:op.udivbh2grnc3dt@pc-de-georges...
bonsoir,
y aurait il sur ce forum pour m'expliquer les sorties t1 et t2 en regard
de l'appel de l'un ou l'autre des constructeurs. Dans le main quels sont
constructeurs appelées (je pense que c'est le premier pour t1 et le second
pour t2)? Je comprends la premiere sortie mais pour la 2,3 et 4 je nage :
pouvez vous m'expliquer le pourquoi des ces sorites?
Merci de votre aide.
Cordialemnent,
Georges.
Voici le bout de code:
public class Time
{
// private member variables
private int Year;
private int Month;
private int Date;
private int Hour;
private int Minute;
private int Second = 30;
// public accessor methods
public void DisplayCurrentTime()
{
System.DateTime now = System.DateTime.Now;
System.Console.WriteLine(
"nDebugt: {0}/{1}/{2} {3}:{4}:{5}",
now.Month, now.Day, now.Year, now.Hour, now.Minute,
now.Second);
//constructors
public Time(System.DateTime dt)
{
Year = dt.Year;
Month = dt.Month;
Date = dt.Day;
Hour = dt.Hour;
Minute = dt.Minute;
Second = dt.Second; // explicit assignement
}
public Time(int Year, int Month, int Date, int Hour, int Minute)
{
this.Year = Year;
this.Month = Month;
this.Date = Date;
this.Hour = Hour;
this.Minute = Minute;
}
}
public class Tester
{
static void Main()
{
System.DateTime currentTime = System.DateTime.Now;
Time t = new Time(currentTime);
t.DisplayCurrentTime();
Time t2 = new Time(2005, 11, 18, 11, 45);
t2.DisplayCurrentTime();
System.Console.WriteLine("Appuyer sur une touche pour quitter le
programme svp !");
System.Console.ReadKey();
}
}
--
Les dysfonctionnements les plus courants d'un pc sont souvent causés par
le truc entre la chaise et le clavier.....
Le constructeur appelé est celui dont la signature (le nombre de paramètres et leurs types) correspond à l'appel.
Quelles sont les sorties dont tu parles ?
Ta méthode DisplayCurrentTime affiche les informations concernant la date et l'heure courante et non l'objet instancié.
A part çà appeler une classe Time c'est un peu gonflé car source de confusion.
Marc
"Georges Rouvrais" a écrit dans le message de news:
bonsoir,
y aurait il sur ce forum pour m'expliquer les sorties t1 et t2 en regard de l'appel de l'un ou l'autre des constructeurs. Dans le main quels sont constructeurs appelées (je pense que c'est le premier pour t1 et le second pour t2)? Je comprends la premiere sortie mais pour la 2,3 et 4 je nage : pouvez vous m'expliquer le pourquoi des ces sorites?
Merci de votre aide.
Cordialemnent, Georges.
Voici le bout de code:
public class Time { // private member variables private int Year; private int Month; private int Date; private int Hour; private int Minute; private int Second = 30;
// public accessor methods public void DisplayCurrentTime() { System.DateTime now = System.DateTime.Now; System.Console.WriteLine( "nDebugt: {0}/{1}/{2} {3}:{4}:{5}", now.Month, now.Day, now.Year, now.Hour, now.Minute, now.Second);
//constructors public Time(System.DateTime dt) { Year = dt.Year; Month = dt.Month; Date = dt.Day; Hour = dt.Hour; Minute = dt.Minute; Second = dt.Second; // explicit assignement
} public Time(int Year, int Month, int Date, int Hour, int Minute) { this.Year = Year; this.Month = Month; this.Date = Date; this.Hour = Hour; this.Minute = Minute; } } public class Tester { static void Main() { System.DateTime currentTime = System.DateTime.Now; Time t = new Time(currentTime); t.DisplayCurrentTime();
Time t2 = new Time(2005, 11, 18, 11, 45); t2.DisplayCurrentTime(); System.Console.WriteLine("Appuyer sur une touche pour quitter le programme svp !"); System.Console.ReadKey(); } }
-- Les dysfonctionnements les plus courants d'un pc sont souvent causés par le truc entre la chaise et le clavier.....