Wie können Klassen nicht-materialisierte Attribute haben, die nur über get/ set-Mehoden simuliert sind?

kneitzel

Top Contributor
Die Begriffe sagen mir so erst einmal nichts, daher wäre die Frage, wie das definiert wurde.

Generell kann man Methoden haben, die z.B. etwas setzen oder Abfragen, ohne dass der Wert selbst vor kommt.

Beispiel:
Du hast eine Klasse Uhrzeit. Du speicherst aber nur die Anzahl der Sekunden, die seit 0 Uhr vergangen sind.
Du kannst aber natürlich jetzt Getter und Setter für Stunden, Minuten und Sekunden haben.

Stunden sind dann halt etwas wie die gespeicherten Sekunden / 3600 beim Getter und der Setter der Stunden würde halt den Wert setzen auf Stunden * 3600 + Wert % 3600

Aber diese Begriffe selbst kenne ich nicht, so dass dies nur einfach etwas ist, das ich aus der Fragestellung etwas abgeleitet habe.
 

Blut1Bart

Mitglied
Beispiel:
Java:
import java.util.IntSummaryStatistics;
import java.util.List;

public class Bilanz {
    private List<Integer> einnahmen = List.of(5000, 6000, 4000);
    private List<Integer> ausgaben = List.of(3500, 5500, 1000);

    public int getBilanz() {
        return einnahmen.stream().mapToInt(Integer::intValue).sum() - ausgaben.stream().mapToInt(Integer::intValue).sum();
    }

    public IntSummaryStatistics getEinnahmenStats() {
        return einnahmen.stream().mapToInt(Integer::intValue).summaryStatistics();
    }

    public IntSummaryStatistics getAusgabenStats() {
        return ausgaben.stream().mapToInt(Integer::intValue).summaryStatistics();
    }

    public static void main(String[] args) {
        Bilanz bilanz = new Bilanz();
        System.out.println("bilanz = " + bilanz.getBilanz());
        System.out.println("einnahmen = " + bilanz.getEinnahmenStats());
        System.out.println("ausgaben = " + bilanz.getAusgabenStats());
    }
}

getBilanz, getEinnahmenStats, getAusgabenStats sind nur über Getter simulierte, nicht-materialisierte Attribute...

einnahmen und ausgaben hingegen sind materialisierte Attribute. :)

Anderes Beispiel, ein Auto hat Räder, Motor und ein Lenkrad, und außerdem das nicht-materialisierte Attribut Geschwindigkeit. :)
 

Neumi5694

Top Contributor
getBilanz, getEinnahmenStats, getAusgabenStats sind nur über Getter simulierte, nicht-materialisierte Attribute...

einnahmen und ausgaben hingegen sind materialisierte Attribute. :)

Anderes Beispiel, ein Auto hat Räder, Motor und ein Lenkrad, und außerdem das nicht-materialisierte Attribut Geschwindigkeit. :)
So ähnlich hätt ich's auch verstanden, nur bin ich bei der Geschwindigkeit nicht der Meinung, dass die in diese Kategorie fällt, denn diese ist tatsächlich eine Eigenschaft des Autos, lässt sich nicht aus anderen Eigenschaften berechnen oder ableiten. Nur der Spezialfall AnzahlRäder == 0 würde Geschwindigkeit = 0 ergeben, falls das Auto sich nicht gerade in der Luft oder auf rutschigem Untergrund befindet.
 

Blut1Bart

Mitglied
nur bin ich bei der Geschwindigkeit nicht der Meinung, dass die in diese Kategorie fällt,
Weg / Zeit = Geschwindigkeit :)

aber es stimmt allerdings, es kommt auf die Attribute (Eigenschaften) des Autos an. Ich muss allerdings betonen, dass auch mir der Begriff materialisiert neu ist und ich darum Vermutungen anstellen muss... bei Datenbanken gäbe es "eindeutige, zusammengesetzte und künstliche" Werte, vielleicht ist das hierbei so ähnlich. Aber nur vielleicht. :D
 

Neumi5694

Top Contributor
Weg / Zeit = Geschwindigkeit :)

aber es stimmt allerdings, es kommt auf die Attribute (Eigenschaften) des Autos an. Ich muss allerdings betonen, dass auch mir der Begriff materialisiert neu ist und ich darum Vermutungen anstellen muss... bei Datenbanken gäbe es "eindeutige, zusammengesetzte und künstliche" Werte, vielleicht ist das hierbei so ähnlich. Aber nur vielleicht. :D
Dann müssten wir aber beides ins Auto speichern, was mir bei der Zeit wenig sinnvoll erscheint ;). Auf welchem Weg sich das Auto befindet, ist allerdings eine brauchbare Eigenschaft.
Ich denke, es geht tatsächlich um diese "künstlichen" Werte. Ein Kreis kann die Eigenschaft Radius und Durchmesser haben, von der aber nur eine gespeichert werden muss (und sollte). Die jeweils andere wird beim Abfragen oder Setzen umgerechnet.

@Oneixee5 Ich kenn das eigentlich nur im Zusammenhang mit Serialisierung, aber möglich wär's.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Methoden Wie können Klassen auf Klassenfremde Objekte zugreifen? Java Basics - Anfänger-Themen 7
M Warum können innere Klassen keine static-members haben? Java Basics - Anfänger-Themen 2
frau-u Können Interfaces von Klassen erben? Java Basics - Anfänger-Themen 3
C Methoden können nicht auf Instanzvariable der Klasse zugreifen Java Basics - Anfänger-Themen 3
B Warum können super() und this() nicht gemeinsam in einem Konstruktor verwendet werden? Java Basics - Anfänger-Themen 7
D Können if Anweisungen aufeinander aufbauen? Java Basics - Anfänger-Themen 1
Elaurin Erste Schritte effektiv lernen mit Java umgehen zu können? Java Basics - Anfänger-Themen 5
N Sicherheitsnummer erstellen und verändern können Java Basics - Anfänger-Themen 1
J Hinzufügen eines Objekts in eine Liste, um später dann nochmal auf das Objekt zugreifen zu können Java Basics - Anfänger-Themen 8
JokerBlacky Klassen Klasse Queue Klasse mit Attributen anhängen und auslesen können Java Basics - Anfänger-Themen 4
R warum kann System.out.println(..) etwas, was Swing-Elemente Nicht können ? Java Basics - Anfänger-Themen 11
H Methoden können nicht verwendet werden Java Basics - Anfänger-Themen 10
R Eine Arrayliste in XML abspeichern und laden können Java Basics - Anfänger-Themen 7
W Wie kann man diesen Code in einen Code umwandeln, der folgendes können sollte? Java Basics - Anfänger-Themen 1
S Methoden Linked List Methoden können nicht aufgerufen werden Java Basics - Anfänger-Themen 1
J Interface Bubblesort soll Arrays beliebiger Referenztypen sortieren können. Java Basics - Anfänger-Themen 5
B Anwender soll mathematische Funktion eingeben können, Einfachster Fnktionsplotter Java Basics - Anfänger-Themen 4
J Können mehere Threads parallel eine Datei lesen? Java Basics - Anfänger-Themen 4
X Muss man Java können um Jython nutzen zu können? Java Basics - Anfänger-Themen 14
K mehrer applets sollen sich gegenseitig verständigen können Java Basics - Anfänger-Themen 3
F Können Klasse auch Werte liefern? Java Basics - Anfänger-Themen 3
2 Alle Werte die mit n Würfeln mit m Seiten geworfen werden können in ein n Dimensionales Array Java Basics - Anfänger-Themen 15
E Statische Member können nicht vererbt werden? Java Basics - Anfänger-Themen 10
B OOP Objekt klonen (Grundzustand), um in Editor "Abbrechen" zu können Java Basics - Anfänger-Themen 4
K Txt statt in TextArea in JTable einlesen und bearbeiten können Java Basics - Anfänger-Themen 4
G ein programm nicht mehrmals starten können Java Basics - Anfänger-Themen 6
R Klassenattribut nur 1 mal setzen können Java Basics - Anfänger-Themen 7
T können überschriebene methoden andere zugruffsrechte besitze Java Basics - Anfänger-Themen 2
R Buttons können sich bewegen und JButtons nicht? Java Basics - Anfänger-Themen 5
Speedrunner klassen aufrufen Java Basics - Anfänger-Themen 41
M Log4J (v2) nachträglich in allen Klassen hinzufügen Java Basics - Anfänger-Themen 9
D importieren eigener Klassen Java Basics - Anfänger-Themen 12
W Wo ist der Wurm in meinem Grundverständnis von Klassen? Java Basics - Anfänger-Themen 22
S Daten/Klassen/Packages richtig updaten!? Java Basics - Anfänger-Themen 2
alice98 Erste Schritte Liste erstellen ohne vorgefertigte Klassen Java Basics - Anfänger-Themen 1
C Archiv für eigene Klassen Java Basics - Anfänger-Themen 9
S Objekte von zwei klassen in zwei verschiedene Textdateien schreiben Java Basics - Anfänger-Themen 5
elsaaaaaa Wochentag als String ausgeben mit JDK Klassen Java Basics - Anfänger-Themen 6
CptK Generics: Klassen die Interface implementieren, aber selbst nicht das Interface sind Java Basics - Anfänger-Themen 8
Z Mehtode bei Start des Programms ausführen (Klassen übergreifend) Java Basics - Anfänger-Themen 12
J Allgemeines Problem mit Klassen Java Basics - Anfänger-Themen 5
TimoN11 Java Klassen Global einbinden Java Basics - Anfänger-Themen 1
B Inventar als einzelne Klassen anlegen? Java Basics - Anfänger-Themen 12
G Java Klassen und Instanzmethoden Java Basics - Anfänger-Themen 15
C Kommunikation zwischen 2 Klassen Java Basics - Anfänger-Themen 3
T Vererbung Verschiedene Attribute für vererbte Klassen Java Basics - Anfänger-Themen 4
S Klassen instanziieren und verwenden von Getter und Setter Java Basics - Anfänger-Themen 4
B Variablen Variablen übertragen ohne Klassen Java Basics - Anfänger-Themen 5
C Fernseher-Aufgabe (Methoden, Klassen und Objekte) Java Basics - Anfänger-Themen 63
H Methoden in großen Klassen gruppieren oder auslagern? Java Basics - Anfänger-Themen 10
G Abstrakte Klassen Java Basics - Anfänger-Themen 11
Y Klassen Klassen und Objekte Java Basics - Anfänger-Themen 3
Y Klassen Klassen und Objekte mit set und get Java Basics - Anfänger-Themen 0
A Generischen Klassen Java Basics - Anfänger-Themen 8
A Vererbung Klassen im Bezug auf Auto´s Java Basics - Anfänger-Themen 18
A Generische Klassen/Interface Java Basics - Anfänger-Themen 1
A Klassen Vererbung und zusätzliche Unterklassen Java Basics - Anfänger-Themen 23
J 2 klassen benutzen Java Basics - Anfänger-Themen 5
A Klassen und methoden Java Basics - Anfänger-Themen 15
A Bankweverwaltung mit Klassen und Methoden Java Basics - Anfänger-Themen 14
J Klassen Problem Java Basics - Anfänger-Themen 8
I Java Klassen "Graphics" und "MouseEvent" kombinieren Java Basics - Anfänger-Themen 7
I Klassen als Datentyp nutzen? Java Basics - Anfänger-Themen 11
M Aufsplitten von Methoden in andere Klassen Java Basics - Anfänger-Themen 2
M (Sehr großes Problem) Listen als static in anderen Klassen verwendet Java Basics - Anfänger-Themen 12
C Klassen objektorientiert aufteilen Java Basics - Anfänger-Themen 6
hello_autumn Klassen Anzahl sowie die Anzahl der Junit Tests ermitteln? Java Basics - Anfänger-Themen 8
A Auf Eigenschaften von Objekten anderer Klassen zugreifen Java Basics - Anfänger-Themen 5
F Klassen und Pakete Projektübergreifend (Eclipse) Java Basics - Anfänger-Themen 6
V_Fynn03 Klassen Überweisungen tätigen und einzahlen mit 2 Klassen Java Basics - Anfänger-Themen 1
W Abarbeitungsreihenfolge Anonyme Klassen Java Basics - Anfänger-Themen 2
V_Fynn03 Bruchrechner programmieren (2 Klassen) Java Basics - Anfänger-Themen 9
D OOP- Eine Klasse in mehrere Klassen aufteilen Java Basics - Anfänger-Themen 7
J Problem mit Array: 2 Klassen Java Basics - Anfänger-Themen 2
W Frage zu anonymen Klassen Java Basics - Anfänger-Themen 4
Curtis_MC Parameter-Übergabe bei Klassen und Methoden Java Basics - Anfänger-Themen 12
E Klassen implementieren Java Basics - Anfänger-Themen 94
T Interfaces in erbenden Klassen Java Basics - Anfänger-Themen 2
C Methoden/Klassen Übergabewerte Java Basics - Anfänger-Themen 8
C Java Klassen/Methoden/Übergabeparameter Java Basics - Anfänger-Themen 4
L Wie geht man bei mehreren Action Klassen vor? Java Basics - Anfänger-Themen 0
P Datentypen, Klassen, Operatoren, Wrapperklassen Java Basics - Anfänger-Themen 2
L Wie teilt man ein Programm in vernünftige Klassen ein? Java Basics - Anfänger-Themen 10
T Klassen Denkfehler im Klassen "dynamisch" instanzieren? Java Basics - Anfänger-Themen 4
P Zugriff auf Variablen anderer Klassen in Greenfoot Java Basics - Anfänger-Themen 1
A Methode, Klassen Java Basics - Anfänger-Themen 3
B UML Klassen Diagramm zu Java Code Programmieren und ausführen Java Basics - Anfänger-Themen 21
J Zwei Klassen die sich gegenseitig referenzieren - Bad practice? Java Basics - Anfänger-Themen 4
G Klassen und Objekte Java Basics - Anfänger-Themen 2
Java The Hutt SetWerte über verschiedene Klassen Java Basics - Anfänger-Themen 16
D Klassen ausgeben Java Basics - Anfänger-Themen 2
H linkedlist generische klassen Java Basics - Anfänger-Themen 169
B CSS Klassen in eine Liste schreiben Java Basics - Anfänger-Themen 4
Queiser Nicht statische Klassen Java Basics - Anfänger-Themen 6
neerual Klassen Wie rufe ich Klassen, die andere Klassen extenden in einer Test Unit auf? Java Basics - Anfänger-Themen 10
J Gleiche Methode in 2 verschiedenen Klassen - Lösung ? Java Basics - Anfänger-Themen 8
G Refactoring von mehreren identischen Klassen Java Basics - Anfänger-Themen 36
O Wrapper Klassen Java Basics - Anfänger-Themen 6
CptK Best Practice Klassendiagramm aus fertigen Klassen erstellen lassen Java Basics - Anfänger-Themen 2
R OOP Instanzierung in verschiedenen Klassen Java Basics - Anfänger-Themen 8

Ähnliche Java Themen


Oben