Beweis durch Widerspruch
Annahme: Es gibt eine Methode haltetest in der Klasse Fee:
public class Fee { public static boolean haltetest (char[]s, char[]t) { // liefert true, falls das durch die Zeichenkette s dargestellte // Java-Programm bei den durch die Zeichenkette t dargestellten // Eingabedaten anhaelt; // liefert false, sonst } }
Dann lässt sich folgendes Java-Programm in der Datei Quer.java konstruieren:
import AlgoTools.IO; public class Quer { public static void main(String[] argv) { char[] s = IO.readChars(); if (Fee.haltetest(s,s)) while (true); } }
Sei q der String, der in der Datei Quer.java steht.
Was passiert, wenn das Programm Quer.class auf den String q angesetzt wird ? D.h.
1. Fall: | Hält an | ![]() |
haltetest(q,q) == false |
![]() |
Quer angesetzt auf q hält nicht! | ||
2. Fall: | Hält nicht | ![]() |
haltetest(q,q) == true |
![]() |
Quer angesetzt auf q hält an! | ||
Also kann es die Methode haltetest nicht geben!