Wenn Sie den folgenden redundanten Code schreiben, verschlechtert sich die Lesbarkeit. Dies liegt daran, dass der Ausführungsteil und der Logikteil in derselben Datei beschrieben werden. In diesem Artikel wird die Vorgehensweise zum Aufteilen des Ausführungsteils in die Hauptklasse und des Logikteils in die Personenklasse in der folgenden Reihenfolge beschrieben.
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("mein Name ist" + name + "ist");
System.out.println("Alter ist" + age + "ich bin alt");
System.out.println("Wie groß bist du" + height + "m");
System.out.println("Gewicht" + weight + "kg");
double bmi = bmi(height, weight);
System.out.println("BMI" + bmi + "ist");
if (isHealthy(bmi)) {
System.out.println("Standardwert");
} else {
System.out.println("Außerhalb des Standardwertbereichs");
}
}
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;
}
}
Die obige Main.java wird mit der folgenden Konfiguration beschrieben.
Erstellen Sie zunächst Person.java und definieren Sie die Person-Klasse
Person.java
class Person {
}
Verschieben Sie als Nächstes den logischen Teil der Hauptklasse in die Person-Klasse.
--Logischer Teil --printData Methode --fullName Methode --bmi Methode
Person.java
class Person {
public static void printData(String name, int age, double height, double weight) {
System.out.println("mein Name ist" + name + "ist");
System.out.println("Alter ist" + age + "ich bin alt");
System.out.println("Wie groß bist du" + height + "m");
System.out.println("Gewicht" + weight + "kg");
double bmi = bmi(height, weight);
System.out.println("BMI" + bmi + "ist");
if (isHealthy(bmi)) {
System.out.println("Standardwert");
} else {
System.out.println("Außerhalb des Standardwertbereichs");
}
}
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);
}
}
Ich konnte es teilen, aber wenn ich die Hauptklasse so ausführe, wie sie ist, tritt ein Fehler auf. Fügen Sie abschließend der Hauptklasse die folgende Beschreibung hinzu, um die Methode der Person-Klasse aufzurufen.
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);
}
}
Jetzt können Sie es ohne Probleme ausführen.
Recommended Posts