Was bedeutet void tun in java?

Den return-type—der Datentyp des Werts, der von der Methode zurückgegeben, oder void wenn die Methode keinen Wert zurückgibt.

http://download.oracle.com/javase/tutorial/java/javaOO/methods.html

Okay, dann.. Hier meine Frage:

public class EnumTest {
    Day day;

    public EnumTest(Day day) {
        this.day = day;
    }

    public void tellItLikeItIs() {
        switch (day) {
            case MONDAY: System.out.println("Mondays are bad.");
                         break;

            case FRIDAY: System.out.println("Fridays are better.");
                         break;

            case SATURDAY:
            case SUNDAY: System.out.println("Weekends are best.");
                         break;

            default:     System.out.println("Midweek days are so-so.");
                         break;
        }
    }

    public static void main(String[] args) {
        EnumTest firstDay = new EnumTest(Day.MONDAY);
        firstDay.tellItLikeItIs();
        EnumTest thirdDay = new EnumTest(Day.WEDNESDAY);
        thirdDay.tellItLikeItIs();
        EnumTest fifthDay = new EnumTest(Day.FRIDAY);
        fifthDay.tellItLikeItIs();
        EnumTest sixthDay = new EnumTest(Day.SATURDAY);
        sixthDay.tellItLikeItIs();
        EnumTest seventhDay = new EnumTest(Day.SUNDAY);
        seventhDay.tellItLikeItIs();


    }
}

http://download.oracle.com/javase/tutorial/java/javaOO/enum.html

Der obige code funktioniert nicht ohne leere.

Exception in thread "main" java.lang.Error: Unresolved compilation problems: 
    The method tellItLikeItIs() is undefined for the type EnumTest

Was habe ich verpasst?
Warum ist da eine Lücke drin?
Und es macht einen string zurückgeben?

  • Alle Methoden in Java muss ein zurück geben. leere Sag s auf der VM, dass bestimmte Methode wird nicht wieder alles.
  • Sie holten nichtig, weil es geht hand und hand mit "null". Ich hätte es vorgezogen, Sie "leer" ist (das klingt umständlich, aber wäre nicht, wenn wir würden, benutze es schon seit 20 oder 30 Jahren.)
  • Sie können nicht entfernen Sie das Wort void hier, weil das ist, was die Struktur der Sprache erfordert. Definitionen von Methoden erwarten die Angabe des Rückgabetyps; Sie haben zu schreiben Sie es auf irgendwo. Und das ist nur das vor dem Methodennamen.
InformationsquelleAutor Alice | 2011-09-09
Schreibe einen Kommentar