#!/usr/bin/perl -w
######################################################################
# (c) Michael Schilli 1999
######################################################################

###########################################################
package Basepac;               # Basisklasse


sub new {                      # Konstruktor
  my $class = shift;
  my $self = {};

  $self->{'basevar'} = 'BASE'; # Basisklassen-Variable 
                               # initialisieren
  bless $self, $class;
}

###########################################################
package Deripac;               # Abgeleitete Klasse

@ISA = qw ( Basepac );         # Vererbung

sub new {                      # Konstruktor
  my $class = shift;
  my $self = Basepac->new();

  $self->{'derivar'} = 'DERI'; # Variable der abgeleiteten
                               # Klasse initialisieren
  bless $self, $class;
}

sub derimethod {               # In der abgeleiteten Klasse
  my $self = shift;            # ererbte und lokale 
                               # Variablen ausgeben

  print "basevar=", $self->{'basevar'}, " ",
        "derivar=", $self->{'derivar'}, "\n";
}

###########################################################
package main;                  # Hauptprogramm

$derobj = Deripac->new();      # Objekt erzeugen
$derobj->derimethod();         # Variablen ausgeben
