Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Was bedeutet folgende Programmcodezeile genau?
Hier wird ja ein Objekt der Klasse BufferedOutputStream erzeugt. (was bedeuten die Anweisungen in den Klammern?
Die Zeile bedeutet genau das, was sie bedeutet. Es steht eigentlich glasklar da, was geschieht. Schau dir einfach die API-Dokumentation der Konstruktoren der in der Zeile genannten Klassen an.
// Stream zum Schreiben in eine Datei erstellen
OutputStream fileOutputStream = new FileOutputStream(args[0]);
// Stream für GZIP Komprimierung erstellen
OutputStream gzipOutputStream = new GZIPOutputStream(fileOutputStream);
// Stream mit Pufferung der Ausgabe erstellen
BufferedOutputStream ausgang=new BufferedOutputStream(gzipOutputStream);
Die Streams bilden eine Kette. BufferedOutputStream puffert die Daten, die du mit write schreibst und schreibt
sie weiter in das GZIPOutputStream. GZIPOutputStream führt eine Datenkomprimierung durch und schreibt es
weiter in FileOutputStream. FileOutputStream schreibt die komprimierten Daten dann in eine Datei.
Hier ein Beispiel, wie sowas aufgebaut ist.
Code:
public class WriterTest
{
public static void main(String[] args)
{
StringWriter writer = new ReverseStringWriter(new UpperCaseStringWriter(new ConsoleStringWriter()));
writer.write("hallo welt");
}
}
interface StringWriter
{
void write(final String s);
}
class ConsoleStringWriter implements StringWriter
{
public void write(final String s)
{
System.out.println(s);
}
}
class UpperCaseStringWriter implements StringWriter
{
private StringWriter writer;
public UpperCaseStringWriter(final StringWriter writer)
{
this.writer = writer;
}
public void write(final String s)
{
writer.write(s.toUpperCase());
}
}
class ReverseStringWriter implements StringWriter
{
private StringWriter writer;
public ReverseStringWriter(final StringWriter writer)
{
this.writer = writer;
}
public void write(final String s)
{
writer.write(new StringBuilder(s).reverse().toString());
}
}
Aphex ist abgeleitet von Aphex Twin; ein ziemlich schräger Elektro-Künstler, dessen Musik ich sehr gern höre.
Sein gebürtiger Name ist Richard D.James.