Si vous écrivez le code redondant suivant, la lisibilité se détériorera. En effet, la partie exécution et la partie logique sont décrites dans le même fichier. Dans cet article, la procédure de division de la partie exécution en classe Main et de la partie logique en classe person est décrite dans l'ordre suivant.
Main.java
public class Main {
public static void main(String[] args) {
printData(fullName("Kate", "Jones"), 27, 1.6, 50.0);
printData(fullName("John", "Christopher", "Smith"), 65, 1.75, 80.0);
}
public static void printData(String name, int age, double height, double weight) {
System.out.println("mon nom est" + name + "est");
System.out.println("L'âge est" + age + "je suis vieux");
System.out.println("Quelle est votre taille" + height + "m");
System.out.println("Poids" + weight + "kg");
double bmi = bmi(height, weight);
System.out.println("IMC" + bmi + "est");
if (isHealthy(bmi)) {
System.out.println("Valeur standard");
} else {
System.out.println("Hors de la plage de valeurs standard");
}
}
public static String fullName(String firstName, String lastName) {
return firstName + " " + lastName;
}
public static String fullName(String firstName, String middleName, String lastName) {
return firstName + " " + middleName + " " + lastName;
}
public static double bmi(double height, double weight) {
return weight / height / height;
}
public static boolean isHealthy(double bmi) {
return bmi >= 18.5 && bmi < 25.0;
}
}
Le fichier Main.java ci-dessus est décrit avec la configuration suivante.
--Partie d'exécution
Tout d'abord, créez Person.java et définissez la classe Person
Person.java
class Person {
}
Ensuite, déplacez la partie logique de la classe principale vers la classe Person.
--Partie logique --printData, méthode --fullName méthode
Person.java
class Person {
public static void printData(String name, int age, double height, double weight) {
System.out.println("mon nom est" + name + "est");
System.out.println("L'âge est" + age + "je suis vieux");
System.out.println("Quelle est votre taille" + height + "m");
System.out.println("Poids" + weight + "kg");
double bmi = bmi(height, weight);
System.out.println("IMC" + bmi + "est");
if (isHealthy(bmi)) {
System.out.println("Valeur standard");
} else {
System.out.println("Hors de la plage de valeurs standard");
}
}
public static String fullName(String firstName, String lastName) {
return firstName + " " + lastName;
}
public static String fullName(String firstName, String middleName, String lastName) {
return firstName + " " + middleName + " " + lastName;
}
public static double bmi(double height, double weight) {
return weight / height / height;
}
public static boolean isHealthy(double bmi) {
return bmi >= 18.5 && bmi < 25.0;
}
}
Main.java
public class Main {
public static void main(String[] args) {
printData(fullName("Kate", "Jones"), 27, 1.6, 50.0);
printData(fullName("John", "Christopher", "Smith"), 65, 1.75, 80.0);
}
}
J'ai pu le diviser, mais si j'exécute la classe Main telle quelle, une erreur se produira. Enfin, ajoutez la description suivante à la classe Main pour appeler la méthode de la classe Person.
Main.java
public class Main {
public static void main(String[] args) {
Person.printData(Person.fullName("Kate", "Jones"), 27, 1.6, 50.0);
Person.printData(Person.fullName("John", "Christopher", "Smith"), 65, 1.75, 80.0);
}
}
Vous pouvez maintenant l'exécuter sans aucun problème.
Recommended Posts