Fragen zur Einführung

Fragen zur Einführung Stefan Schneider Sat, 07/14/2018 - 19:34

1. Starten einer Anwendung:

1. Starten einer Anwendung:

Was gibt das folgende Javaprogramm auf der Konsole aus wenn man es mit dem Befehl

java Maintest F

startet. Woran erkennt man die Hauptmethode zum Starten der Anwendung?

public class MainTest {
    public MainTest(int k) {
       System.out.println("A");
    }    

public void Main() {
System.out.println("B");
}

public static void main(String[] eingabe) {
System.out.println("C");
}

public final void main(String args) {
System.out.println("D");
}

public String Main(String args) {
System.out.println("E");
String e = "E";
return e;
}
}

Hinweis: Diese Frage kann man erst beantworten wenn man den Stoff des gesamten Grundkurs beherrscht.

Die Antwort finden Sie auf der nächsten Seite (URL rechts unten klicken)

Niveau 1
Schwierigkeitsgrad mittel
Zeit 3 Minuten
javafrage Fri, 12/23/2011 - 12:23

2. Java-Befehle: Welche drei Dateiextensionen (Dateitypen) werden beim Übersetzen, Packen, Bündeln und Ausführen benutzt?

2. Java-Befehle: Welche drei Dateiextensionen (Dateitypen) werden beim Übersetzen, Packen, Bündeln und Ausführen benutzt?

Welcher der Dateitypen im Javaumfeld ist dafür gedacht in Texteditoren erstellt zu werden?

  • *.java
  • *.class
  • *.jar

Erklärung: Dateiextensionen sind die Endungen von Dateien die den Typ einer Datei bestimmen; Beispiele ausserhalb des Javaumfelds sind: .txt .exe .doc

Die Antwort finden Sie bei der nächsten Frage (URL rechts unten)

Niveau 1
Schwierigkeitsgrad mittel
Zeit 3 Minuten

Antwort zu 1. Starten eines Hauptprogramms

Die Frage finden Sie auf der vorgehenden Seite (URL links unten klicken)

Gibt "C" auf der Konsole aus.

Wenn eine Klasse mit dem Befehl java als Hauptpgrogramm gestartet wird, sucht das Laufzeitsystem eine Methode für die das folgende gilt

  • sie muss statisch sein: Es gibt zu diesem Zeitpunkt noch keine Anwendungsobjekte
  • void als Rückgabewert
  • Name "main". Java ist sensitive für Groß- und Kleinschreibung!
  • Eingabeparameter: Ein Feld von String. Der Name der Variable ist beliebig.
javafrage Fri, 12/23/2011 - 14:09

3. jar: Wozu dient das Hilfprogramm jar im Java SDK?

3. jar: Wozu dient das Hilfprogramm jar im Java SDK?

Die Antwort finden Sie bei der nächsten Frage (URL rechts unten).

Niveau 1
Schwierigkeitsgrad leicht
Zeit 2 Minuten

Antwort zu 2. Welche drei Dateiextensionen (Dateitypen) werden beim Übersetzen, Packen, Bündeln und Ausführen von Java-Anwendungen verwendet?

Die Frage finden Sie auf der vorgehenden Seite (URL links unten klicken)

Nur die *.java Dateien sind in Text (UTF8) codierte Dateien die man mit einem normalen Texteditor lesen kann. 

*.class und *.jar Dateien sind Binärdateien. *.jar Dateien sind im zip Format codiert.

 

javafrage Fri, 12/23/2011 - 16:26

4. Anwendungen des Java Development Kits

4. Anwendungen des Java Development Kits

Das Java Development Kit enthält Programme zum Übersetzen, Ausführen von Programmen, packen von Dateien, extrahieren von Dokumentation, generieren von Schnittstelleninformation.
Tragen Sie in die 5 pfeilartigen Fünfecke die entsprechenden Programmnamen ein:

JDK Tools ohne Namen

Niveau 1
Schwierigkeitsgrad mittel
Zeit

6 Minuten

Antwort zu 3. jar: Wozu dient das Hilfprogramm jar im Java SDK?

Zum Packen, Entdecken, Bündeln, komprimieren und signieren von Java Bytecode-dateien und beliebigen anderen Dateien zu einer Datei.

javafrage Sun, 01/08/2012 - 21:25

5. Anforderungen an einen Algorithmus

5. Anforderungen an einen Algorithmus

Nennen Sie vier Anforderungen an einen gültigen Algorithmus.

Niveau 1
Schwierigkeitsgrad mittel
Zeit 4 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu Frage 4. : Anwendungen des Java Development Kits

JDK Tools ohne Namen

javafrage Thu, 11/21/2013 - 16:09

6. Algorithmen erkennen

6. Algorithmen erkennen

Warum implementiert die folgende Methode keinen Algorithmus?

Geben Sie eine Erklärung.

public void keinAlgorithmus()
 {
 int a = 17;
 int b = 22;
 while (a!=b)
   {
      a++;
      b++;
   }
 }

Niveau 1
Schwierigkeitsgrad mittel
Zeit 2 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu Frage 5: Anforderungen an einen Algorithmus

  1. Er funktioniert für gültige Eingaben
  2. Er besitzt endlich viele Einzelschritte
  3. Er ist in realistischer Zeit ausführbar
  4. Er terminiert

 

javafrage Sat, 11/28/2015 - 20:07

7. Eigenschaften eines gültigen Algorithmus

7. Eigenschaften eines gültigen Algorithmus

Analysieren Sie die folgende Methode. Der Algorithmus implementiert das Multiplizieren zweier Zahlen durch fortgesetztes Addieren. Ignorieren Sie potentielle Probleme mit endlichen Wertebereichen in der Java-arithmetik:

 public static int multipliziere(int a, int b) {
   int i = 0; // Laufvariable
   int result = 0; // Ergebnis
   while (i<b) { //Mache weiter bis Laufvariable b erreicht
      result = result+a; // addiere a zu Ergebnis
      i++; // Inkrementiere die Laufvariable
    }
   return result;
 }

Die folgende Aussage ist zu vage formuliert um der Methode die Eigenschaften eines gültigen Algorithmus zu zugestehen.

„Diese Methode multipliziert zwei beliebige ganze Zahlen a und b und gibt das Ergebnis zurück“

Welche Eigenschaft eines Algorithmus ist nicht erfüllt?

Wie muss die Aussage präzisiert werden, damit Sie einen gültigen Algorithmus beschreibt?

Niveau 1
Schwierigkeitsgrad mittel
Zeit 2+2 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu Frage 6: Algorithmen erkennen

Die Schleife terminiert nicht. Mehr Informationen zu diesem Thema finden Sie hier.

javafrage Sun, 05/01/2016 - 14:39

Anonymous (not verified)

Thu, 05/26/2016 - 10:01

Hallo Herr Schneider,

wollten Sie wirklich den binary left shift operator benutzen?

Nach meinem Wissensstand würde Ihre Schleife dann nicht terminieren. ( Die Bits von i um b Stellen nach links verschoben ist immer größer Null, also -> True. )

Und eine Anfrage bezüglich der Lesbarkeit des Codes: Ist es möglich die Kommentare alle bündig weiter rechts auszurichten? ( Betrifft vlt allen Code von Ihnen, doch hier fällt es mir besonders auf. )

Viele Grüße!

holodoctor

Sun, 05/29/2016 - 16:48

In reply to by Anonymous (not verified)

Gut beobachtet. Danke.
Ich habe den Fehler korrigiert.

8. Programme des JDK/SDK

8. Programme des JDK/SDK

Das Java Development Kit (JDK) enthält Programme zur Softwareentwicklung und Ausführung von Javaanwendungen. Nennen Sie die typischen Eingaben und Ausgaben dieser Programme :

JDK Programm Gelesene Dateien (Eingaben) Ausgaben
javac    
javap    
javadoc    
jar    
java    

.

Niveau 1
Schwierigkeitsgrad mittel
Zeit 6 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu Frage 7: Eigenschaften eines gültigen Algorithmus

Die folgende Aussage ist zu vage formuliert um der Methode die Eigenschaften eines gültigen Algorithmus zu zugestehen.

„Diese Methode multipliziert zwei beliebige ganze Zahlen a und b und gibt das Ergebnis zurück“

Welche Eigenschaft eines Algorithmus ist nicht erfüllt (2 Min.)?
Negative Werte für b sind gültige Eingabewerte für die aber inkorrekte Ergebnisse produziert werden.
Wie muss die Aussage präzisiert werden, damit Sie einen gültigen Algorithmus beschreibt (2 Min.)?

„Diese Methode multipliziert eine beliebige ganze Zahl a mit einer positiven Zahl b und gibt das Ergebnis zurück“ 

Antwort zu Frage 8.: Programme des JDK/SDK

JDK Programm Gelesene Dateien (Eingaben) Ausgaben
javac  Java Quellcode, Java class, Jar dateien  *.class Dateien mit Byte code
javap  Java class Dateien  *.java Dateien mit Deklarationen
javadoc  Javaquellcode  html Seiten mit Dokumentation
jar  Beliebige Dateien, vorzugsweise Java Bytecodedateien  Den Inhalt der jar Datei oder jar Dateien. Dies hängt von den Optionen ab
java  Java Bytecode-dateien,
Java Archive
 Alle Möglichkeiten eines Programms:
Ausgaben auf Konsole, GUI, Netzwerk oder Dateien.

 

javafrage Sun, 06/19/2016 - 11:06

Anonymous (not verified)

Tue, 12/18/2018 - 22:29

Ich verstehe leider nicht warum bei den Programmen des JDK/SDK der Javac also der Übersetzer auch Java class und jar Dateien einlesen kann, ich dachte dieser Übersetzt den Quellcode in Bytecode und gibt dann die .class Dateien aus?

java braucht oft die Informationen anderer Klassen (Methoden, Attribute etc.) um eine Klasse übersetzen zu können. Hierfür benutzt er die .class Datei einer Klasse oder ein .jar Archiv in dem die .class Datei steht. Findet er keine .class Datei, übersetzt der die .java Datei.