Erste Schritte extends vererbung

kill_dmp

Aktives Mitglied
hi all

ich habe einen frage zur vererbung
ich habe eine klasse Personal erstellt
wenn ich jetzt eine klasse Mitarbeiter erstellen und sie erben lasse von personal
solte ich doch auf einen int wert zugreifen können oder ?
ich will den int wert nicht static machen

Klasse Personal
int hallo = 1

klasse Mitarbeiter extends Persoal
(keine werte)

klasse Test
psvm
mitarbeiter mitarbeiter = new mitarbeiter()
sysout("wie ist der wert von"+Mitarbeiter.hallo)
 

Schandro

Top Contributor
Ja (solange beide Klassen im selben package liegen, schließlich hat hallo die Sichtbarkeit package protected)

PS: die Groß- und Kleinschreibungsfehler in den beiden Zeilen
Java:
mitarbeiter mitarbeiter = new mitarbeiter()
sysout("wie ist der wert von"+Mitarbeiter.hallo)
liegen wahrscheinlich nur daran das du Pseudocode gepostet hast. Richtig müssen die natürlich heissen
Java:
Mitarbeiter mitarbeiter = new Mitarbeiter()
sysout("wie ist der wert von"+mitarbeiter.hallo)
 
Zuletzt bearbeitet:

kill_dmp

Aktives Mitglied
sry die frage ist da schon an sich blöd
aber i wie bekomme ich es hien das bei sysout immer ein fehler ist
Java:
public class  Personal {
     protected int erfarung = 0;
     protected int vital = 1;
     protected int gewantheit = 1;
     protected int interligenz = 1;
     protected int erscheinung = 1;
     protected int level = 1;
     protected int aktionswert = level * (vital + gewantheit + interligenz + erscheinung);
     protected int erfolgreich =(int) (Math.random()* level) *level ;
     protected int rang = erfolgreich * level;
     protected int versagt = (int) Math.random()* 100 / level; 
     protected String job = "Nix könner";
     
     void LevelUp(){
        if (erfarung > 99){
            erfarung = 0;
            level = level++;
            vital++;
            gewantheit++;
            interligenz++;
            erscheinung++;
        }
     }
}

Java:
public class Nutte extends Personal{
    
  
}

Java:
public class Test {
Nutte Nutte = new Nutte(); 
    public static void main(String[] args) {
        System.out.println("aw ist "+Nutte.aktionswert);


         
   }
}
 
B

bygones

Gast
weil Test wahrscheinlich nicht auf aktionswert zugreifen kann... die nutte selbst kann es
 

kill_dmp

Aktives Mitglied
test ist im paket und solte zugreifen können
die console sagt immer
Code:
run:
Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - non-static variable Nutte cannot be referenced from a static context
	at Test.main(Test.java:9)
Java Result: 1
BUILD SUCCESSFUL (total time: 2 seconds)
ich hatte eingendlich nicht vor in den klassen static zu benutzen da die werte sich später noch ändern sollen (per get und set)
 
M

Marcinek

Gast
Schreib mal deine Variable "Nutte" besser klein und mach sie static.

Ansonsten compilerfehler bei google eingeben. Typischer Anfänger Fehler.
 

kill_dmp

Aktives Mitglied
ok den namen habe ich schon mal klein
aber wenn ich sie static mache kann ich nur 1 mal einen wert übergeben und dann kann ich es nicht mehr ändern und das ich schlecht bei einen objekt was sich ändert.

der wert von aktionswert ändert sich ja mit level und fähigkeiten
 

JavaMeetsBlueJ

Bekanntes Mitglied
Hi,
wenn eine Variable static ist, hat sie für die komplette Klasse Gültigkeit und nicht nur für ein bestimmtes Objekt. Was du meinst, dass eine variable nur einmal initialisiert werden kann, ist das Schlüsselwort "final".

Ich bin mir da zwar zu 100% sicher, sollte ich dennoch falsch liegen, möge man mich korrigieren ;)

lg
 

kill_dmp

Aktives Mitglied
wenn ich
Java:
protected static int aktionswert = level * (vital + gewantheit + interligenz + erscheinung);
bekomme ich wieder einen compiler fehler aber diesmal in personal der fehler in test ist auch noch da

Code:
run:
Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - non-static variable nutte cannot be referenced from a static context
	at Test.main(Test.java:9)
Java Result: 1
BUILD SUCCESSFUL (total time: 1 second)
 

x22

Bekanntes Mitglied
Static bedeutet, dass du eine Methode(wenn du sie denn static definiert hast) ausführen kannst, ohne zuvor ein Objekt erzeugt zu haben.

Die Fehlermeldung sagt dir doch schon, dass deine Variable "nutte" nicht static ist und du daher keine Referenz erzeugen kannst.

Weshalb möchtest du denn überhaupt die Variablen static deklarieren? Gibt in meinen Augen keinen Sinn.. mach es lieber:

Java:
protected final int AKTIONSWERT= level * (vital + gewantheit + interligenz + erscheinung);

oder deklarier deine Variable "nutte" static..
 

kill_dmp

Aktives Mitglied
erlich gesagt kommt grade nur bahnhof an
die klasse personal soll ja nicht benutz werden (als objekt), ich habe die eigendlich als bauplan gedach um mir schreibarbeit ab zu nehmen

personal soll ein level system zu verfügung stellen für nutte, schläger und co.
das was in personal steht soll 1zu1 auch in den vererbten klassen zur verfügung stehen

des weiteren muss ich mit der main klasse drauf zugreifen können und ausgegeben können gegeben falls auch verändern
 

x22

Bekanntes Mitglied
Was meinst du mit "ein Level zur Verfügung stellen" ?
...

Das ist der Sinn von Vererbung, dass das dann zur Verfügung steht.

Wo liegt dein Problem jetzt noch?
Wie sieht deine main-Klasse denn jetzt aus?
 

Crian

Top Contributor
Du schriebst ja du seist Legastheniker. Deshalb hier ein Verbesserungsvorschlag bei der Variablenbenennung.

Statt

Java:
public class  Personal {
     protected int erfarung = 0;
...
     protected int gewantheit = 1;
     protected int interligenz = 1;

Java:
public class  Personal {
     protected int erfahrung = 0;
...
     protected int gewandtheit = 1;
     protected int intelligenz = 1;
 

kill_dmp

Aktives Mitglied
zur zeit ist es noch test meine main klasse, mit sysout worüber ich erst testen wolte den wert in der console auszugeben
und später alles in einer liste
und danach mit mit swing eine oberfläche erstellen

das level system soll so aussehen ich erhöhe von der main aus den wert von erfahrung und personal solte automatich levelup ausführen sobalt die bedrinung erfüllt ist. das habe ich bis jetzt noch nicht erstellt bis auf die methode.

wie man ja schon mit bekommt bin ich der absolute n00b in der vererbung


so ich werde das hier auch beenden ich werde mich glaube ich besser wieder die nase in die bücher stecken, die schicken mir keine pm :) :rtfm:
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Problem mit Vererbung (extends) cannot find symbol Java Basics - Anfänger-Themen 3
G Wiedermal vererbung, extends JDialog extends Exception ? Java Basics - Anfänger-Themen 8
mrStudent <? extends T> und <? super T> Java Basics - Anfänger-Themen 1
berserkerdq2 Größter unterschied von extends thread und implements runnable? Java Basics - Anfänger-Themen 2
N Variabel in eine class mit "extends JLabel" übertragen Java Basics - Anfänger-Themen 2
J extends Problem Java Basics - Anfänger-Themen 2
N extends und super vs new object Java Basics - Anfänger-Themen 4
JavaTalksToMe Extends/Implements Frage Java Basics - Anfänger-Themen 3
D public ArrayList(Collection<? extends E> c); Java Basics - Anfänger-Themen 2
CptK Interface Klasse Frame (extends JFrame) aus anderer Klasse schließen Java Basics - Anfänger-Themen 7
J Implements und Extends Java Basics - Anfänger-Themen 5
C Was macht `public class ClassName<T extends Comparable<T>>`? Java Basics - Anfänger-Themen 14
J Compiler-Fehler Fehler bei Vektor (E extends Object declared in class Vector) Java Basics - Anfänger-Themen 9
M mehrere extends? Java Basics - Anfänger-Themen 19
J doppelname nach schlüsselwort extends Java Basics - Anfänger-Themen 4
V Was bewirkt das Schlüsselwort extends in Verbindung mit class bzw. public class ? Java Basics - Anfänger-Themen 2
T extends und implements Java Basics - Anfänger-Themen 11
Crazynet 2 extends Java Basics - Anfänger-Themen 22
S Wrapper Klasse und extends Java Basics - Anfänger-Themen 2
W Methoden Rückgabedatentyp java.util.Map<java.lang.String,? extends ...> Java Basics - Anfänger-Themen 4
R Vererbung Übergabe von Variablen der Superklasse an Subklasse mit "extends" Java Basics - Anfänger-Themen 5
K Erste Schritte Extends Implements Java Basics - Anfänger-Themen 4
S Threads Thread wenn extends schon vergeben Java Basics - Anfänger-Themen 8
vandread Java Wildcards - Wann super wann extends? Java Basics - Anfänger-Themen 2
F Anfängerfrage zu extends Java Basics - Anfänger-Themen 12
B addAll(Collection<? extends E> c) Java Basics - Anfänger-Themen 9
T Input/Output StructuredFileReader extends BufferedReader Java Basics - Anfänger-Themen 6
P Class<? extends Entity> Array Java Basics - Anfänger-Themen 9
A final und extends Java Basics - Anfänger-Themen 14
Y Threads extends Thread oder implements Runnable Java Basics - Anfänger-Themen 10
C Vererbung "extends" umgehen mittels Objekterzeugung?! Java Basics - Anfänger-Themen 29
L Implements<-->extends und Interface Java Basics - Anfänger-Themen 10
T Collections Queue<? extends Number> add() offer() Java Basics - Anfänger-Themen 13
S Klasse extends HashMap Java Basics - Anfänger-Themen 20
D MyActionListener extends Thread Java Basics - Anfänger-Themen 3
H2SO3- Designfragen (mehrfach extends) Java Basics - Anfänger-Themen 11
G Unterschied e extends y vs ? extends y Java Basics - Anfänger-Themen 5
X List von Klasse B als List von Klasse A (B extends A) Java Basics - Anfänger-Themen 2
H extends Locale Java Basics - Anfänger-Themen 4
O import ja....extends nein Java Basics - Anfänger-Themen 5
G Muss es immer extends sein ? Java Basics - Anfänger-Themen 9
N class Test<E extends MyAbstractClass> => typ von E? Java Basics - Anfänger-Themen 5
K mehrere Extends Java Basics - Anfänger-Themen 2
S extends Vector<xyz> Java Basics - Anfänger-Themen 10
S new .() extends JDialog {.} Java Basics - Anfänger-Themen 15
S extends und Konstruktor Java Basics - Anfänger-Themen 8
E Interface extends Observable Java Basics - Anfänger-Themen 13
U extends JLabel & Thread Java Basics - Anfänger-Themen 2
G Innere klasssen unde "extends" klassen definieren, Java Basics - Anfänger-Themen 2
frau-u JMenu mit extends JPanel? Java Basics - Anfänger-Themen 4
G "extends DBConnection" funktioniert nicht Java Basics - Anfänger-Themen 15
N extends / implements / static, bedeutung ?? Java Basics - Anfänger-Themen 12
C Problem mit Zeichnen auf einer extends Canvas Class... Java Basics - Anfänger-Themen 2
imocode Vererbung Problem mit Vererbung Java Basics - Anfänger-Themen 2
M Vererbung - Polymorphie Java Basics - Anfänger-Themen 37
L Java- Vererbung Java Basics - Anfänger-Themen 4
ineedhelpinjava Vererbung Java Basics - Anfänger-Themen 12
ineedhelpinjava Vererbung Java Basics - Anfänger-Themen 1
I JSON / XML Struktur mit Vererbung / Interfaces Java Basics - Anfänger-Themen 0
M Interface oder Vererbung? Java Basics - Anfänger-Themen 12
M Vererbung Java Basics - Anfänger-Themen 6
M Designentscheidung von Attributen/Methoden im Falle von Vererbung Java Basics - Anfänger-Themen 8
M Generics Vererbung Listen Java Basics - Anfänger-Themen 2
A Methoden Vererbung und Interface Java Basics - Anfänger-Themen 14
D Klassen und Vererbung Java Basics - Anfänger-Themen 2
U Vererbung Java Basics - Anfänger-Themen 7
D Vererbung Java Basics - Anfänger-Themen 3
K Schleife berechnet kein Ergebnis (Vererbung) Java Basics - Anfänger-Themen 6
00111010101 Objektorientiertes Programmieren mit Vererbung (Zahlen in Array verschwinden) Java Basics - Anfänger-Themen 3
W Zur Vererbung: Wann und wie? Java Basics - Anfänger-Themen 35
H Datenkapselung, Vererbung und UML Java Basics - Anfänger-Themen 16
districon Super-Stichwort/ Vererbung Java Basics - Anfänger-Themen 3
YaU Vererbung erstellt NullPointerException? Java Basics - Anfänger-Themen 4
1 Vererbung Klassenattribute Java Basics - Anfänger-Themen 9
TimoN11 Frage zu Java-Vererbung (Cast) Java Basics - Anfänger-Themen 5
N Thema Vererbung Java Basics - Anfänger-Themen 31
A Vererbung Vererbung Übung Java Basics - Anfänger-Themen 5
B Vererbung - Sichtbarkeitsmodifikation - protected Java Basics - Anfänger-Themen 10
B Best Practice Unschlüssig ob Vererbung oder Interface Java Basics - Anfänger-Themen 2
G Java Vererbung Java Basics - Anfänger-Themen 8
Y Vererbung Konto - Anfangsprobleme Java Basics - Anfänger-Themen 7
A Vererbung Klassen im Bezug auf Auto´s Java Basics - Anfänger-Themen 18
A Klassen Vererbung und zusätzliche Unterklassen Java Basics - Anfänger-Themen 23
M Vererbung mit Enums Java Basics - Anfänger-Themen 8
Kirby.exe Vererbung im Detail erklärt? Java Basics - Anfänger-Themen 9
N Modellierung, vererbung, Java Basics - Anfänger-Themen 163
M Fehlendes Verständnis für dynamische Bindung und Vererbung Java Basics - Anfänger-Themen 13
W OOP Vererbung im Computerspiel Java Basics - Anfänger-Themen 7
J Probleme mit Vererbung Java Basics - Anfänger-Themen 4
I Vererbung Java Basics - Anfänger-Themen 13
W OOP Vererbung und Problem bei Zählschleife in einer Methode Java Basics - Anfänger-Themen 10
W Methoden Verständnisfrage Vererbung von Methoden Java Basics - Anfänger-Themen 14
V Vererbung Java Basics - Anfänger-Themen 2
J Frage zur Vererbung Java Basics - Anfänger-Themen 1
J Vererbung Java Basics - Anfänger-Themen 3
U Was löst meine NullPointerException aus? (Vererbung) Java Basics - Anfänger-Themen 12
O Vererbung Ueben mit kleiner Datenstruktur von Räumen Java Basics - Anfänger-Themen 10
O Umgang mit Vererbung verstehen Java Basics - Anfänger-Themen 4
A Vererbung/Interfaces/Generics Java Basics - Anfänger-Themen 12
O Vererbung änderung des Konstruktors Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Neue Themen


Oben