Frage zu einem Quelltext

Moin,

was bedeutet im unten stehenden Quelltext ImageIconDemo.class ? Die Klasse scheint ja nur aus der Mainmethode zu bestehen.

Gruß, Cosmo

import java.awt.*;
import javax.swing.*;

public class ImageIconDemo
{
public static void main( String args[] )
{
JFrame frame = new JFrame();
frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

ImageIcon icon1 = new ImageIcon( ImageIconDemo.class.getResource
( „vegetarian.gif“ ) );
JLabel l1 = new JLabel( icon1 );
frame.getContentPane().add( l1, BorderLayout.WEST );

ImageIcon icon2 = new ImageIcon( ImageIconDemo.class.getResource
( „tweety.gif“ ) );
JLabel l2 = new JLabel( icon2 );
frame.getContentPane().add( l2,BorderLayout.EAST );

frame.pack();
frame.show();
}
}

Quelle: http://www.galileocomputing.de/openbook/javainsel2/j…
Java ist auch eine Insel (2. Aufl.) – 15.6 Die Klasse ImageIcon

Die Klasse scheint ja nur aus der Mainmethode zu bestehen.

Genau!

JFrame frame = new JFrame();

Neues JFrame erzeugen

frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

Verhalten bei Close defineiren

ImageIcon icon1 = new ImageIcon(
ImageIconDemo.class.getResource
( „vegetarian.gif“ ) );

Neues ImageIcon erstellen (als Abstrakte-Klasse)

JLabel l1 = new JLabel( icon1 );

Neues Label mit dem Icon erstellen

frame.getContentPane().add( l1, BorderLayout.WEST );

Label im Layout zuordnen. WEST = auf der Linken Seite

ImageIcon icon2 = new ImageIcon(
ImageIconDemo.class.getResource
( „tweety.gif“ ) );

Neues ImageIcon erstellen (als Abstrakte-Klasse)

JLabel l2 = new JLabel( icon2 );

Neues Label mit dem Icon erstellen

frame.getContentPane().add( l2,BorderLayout.EAST );

Label im Layout zuordnen. EAST = auf der rechten Seite

frame.pack();
frame.show();

Frame packen und anzeigen.

Fertig!

Gruss, Simon

Moin Simon,

danke erstmal für deine ausfühliche Erklärung.

ImageIcon icon2 = new ImageIcon(
ImageIconDemo.class.getResource
( „tweety.gif“ ) );

Neues ImageIcon erstellen (als Abstrakte-Klasse)

Aber was ist class. Ist das irgendein ererbtes Attribut? In der API hab ich nichts gefunden.

Gruß, Cosmo

Das ist dann ein Objekt vom Typ java.lang.Class

Dazu kannst Du die JavaAPI lesen:
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Cl…

Gruss, Simon