private / public Frage

Status
Nicht offen für weitere Antworten.

ReatKay

Mitglied
Hallo werte Community

Ich habe gerade erst mit JAVA angefangen und habe direkt mal ne Frage oder eher 2 ;)

Ich habe gerade ein objekt-orientiertes HelloWorld geschrieben (ja lacht ihr nur):


Code:
public class HelloText
{
    public String MessageText = "Hello World!";
    
    
    public void printText()
    {
        System.out.println(MessageText);
    }
}


public class Main
{
    public static void main (String[] args)
    {
        HelloText h1 = new HelloText();
        h1.printText();
    }
}

Beim kompilieren/ausführen kriege ich die Meldung, dass die Klasse HelloText in einem eigenen File sein soll...


Nun zu den Fragen:

- Muss ich somit also jede öffentliche Klasse in einer eignen Source-Datei abspeichern?
- Gehe ich richtig in der Annahme, dass ich Methoden der Klasse HelloText in der Mainklasse nur benutzen kann, wenn die Klasse HelloText public ist?
- Was passiert wenn ich die public oder private Deklaration bei der Klasse HelloText weglasse? Dann funktioniert das Kompilieren zwar, aber was geschieht da im Hintergrund?

Für jede Hilfe bzw. Erläuterung bin ich dankbar :)

Gruss aus der Schweiz
RK
 

FelixB

Bekanntes Mitglied
ReatKay hat gesagt.:
- Muss ich somit also jede öffentliche Klasse in einer eignen Source-Datei abspeichern?

ja, das ist so vorgesehen. Ist auch durchaus sinnvoll, wenn die Klassen größer werden.

ReatKay hat gesagt.:
- Gehe ich richtig in der Annahme, dass ich Methoden der Klasse HelloText in der Mainklasse nur benutzen kann, wenn die Klasse HelloText public ist?
Zum Teil. Die Klasse muss public sein, das ist Voraussetzung. Zusätzlich müssen aber natürlich auch die Methoden, die du besitzen willst, als public deklariert sein.
Sofern sich die Klasse im selben Package befindet, sieht die Sache ien wenig anders aus, aber das ist für den Anfänger noch nicht so wichtig (denke ich).

ReatKay hat gesagt.:
- Was passiert wenn ich die public oder private Deklaration bei der Klasse HelloText weglasse? Dann funktioniert das Kompilieren zwar, aber was geschieht da im Hintergrund?

default ist private.

viele Grüße
Felix

PS: und bei weitren Fragen: einfach fragen!
 

AlArenal

Top Contributor
FelixB hat gesagt.:
default ist private.

Für Methoden:
Der Standard-Wert wenn nichts anderes (public, protected, private) angegeben wird ist die sog. Package Visibility oder auch Friendly Visibility, d.h. Sichtbarkeit im gleichen Package und Unsichtbarkeit von außerhalb des Packages.
 

FelixB

Bekanntes Mitglied
AlArenal hat gesagt.:
FelixB hat gesagt.:
default ist private.

Für Methoden:
Der Standard-Wert wenn nichts anderes (public, protected, private) angegeben wird ist die sog. Package Visibility oder auch Friendly Visibility, d.h. Sichtbarkeit im gleichen Package und Unsichtbarkeit von außerhalb des Packages.

klar, hab da kurzzeitig was verwechselt... sorry :oops:
 

ReatKay

Mitglied
@ Felix: Danke für deine Antworten, hilft mir sehr weiter

@ Alle andren: Viele Antworten, konnte einiges draus ziehen, nur verwirrt ihr mich neuling mit etwas neuem: "Package Visibility"?

Wenn ich also mehrere Klassen in einer Source-Datei schreibe, sind die dann automatisch im gleichen Package? Heisst das, wenn ich mehrere Klassen schreibe in einer Source-Datei und denen nicht sage ob sie Private oder Public sind, kann ich von einer jeweils auf die Methoden der anderen zugreifen?
 

FelixB

Bekanntes Mitglied
also erstmal solltest du für jede Klassse eine eigene Datei benutzen. Es gibt Ausnahmefälle, aber die sind für Anfänger noch nicht so wichtig.

Mit Klassen und Package verhält es sich genauso wie mit Datei und Ordner.

In einem Package werden also mehrere Klassen "zusammengefasst".
 

ReatKay

Mitglied
Ok, ich werd es mir merken :)
Danke dir - und natürlich allen anderen - für die Zeit die ihr euch genommen habt, einem Neuling zu helfen

Liebe Grüsse aus der Schweiz
RK
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Methoden Vererbung private Attribute/public Methoden Java Basics - Anfänger-Themen 4
J Klasse wird als private erkannt obwohl sie public deklariert ist Java Basics - Anfänger-Themen 3
D Klassenvariablen standardmäßig private oder public? Java Basics - Anfänger-Themen 2
B public/private nur 1x schreiben Java Basics - Anfänger-Themen 3
T public-private problem Java Basics - Anfänger-Themen 5
K Kapselung public / private verständis problem Java Basics - Anfänger-Themen 17
N public class -> public method -> variable private? Java Basics - Anfänger-Themen 10
G field public/private wann Java Basics - Anfänger-Themen 11
J Public / Private Keys speichern bzw. lesen? Java Basics - Anfänger-Themen 8
G GUI Controls private oder public Java Basics - Anfänger-Themen 6
G Variablen public oder private? Java Basics - Anfänger-Themen 9
S private public Java Basics - Anfänger-Themen 5
G Public ,private,protected Java Basics - Anfänger-Themen 1
A public/private/etc. Zusatz weglassen Java Basics - Anfänger-Themen 2
U public, private, protected und "default access" - Java Basics - Anfänger-Themen 14
H private anstatt public Java Basics - Anfänger-Themen 2
H public und private Java Basics - Anfänger-Themen 5
A Public/Private und wie importieren? Java Basics - Anfänger-Themen 13
U Warum kann ich, auf private Variablen zugreifen, wenn ich ein Objekt in der Klasse, die private Variablen hat erstelle und dort drauf zugreifen will? Java Basics - Anfänger-Themen 7
M Private Variable Java Basics - Anfänger-Themen 2
Gaudimagspam Attribute einfügen private Java Basics - Anfänger-Themen 3
N JUnit und private Methoden testen. Java Basics - Anfänger-Themen 9
Z private Klassenvariablen Java Basics - Anfänger-Themen 8
S Private int in Klasse Java Basics - Anfänger-Themen 4
H Vererbung mit private instanzvariablen Java Basics - Anfänger-Themen 9
E 2 Probleme - Datum & private finale Variablen Java Basics - Anfänger-Themen 5
shiroX Klassen Klasse/Methode private final jUnit-Fehler Java Basics - Anfänger-Themen 5
N Instanzvariablen als private... Java Basics - Anfänger-Themen 2
A Private Attribut aus fremder Klasse lesen ? Java Basics - Anfänger-Themen 19
P Methoden private int[] in main Java Basics - Anfänger-Themen 16
A Klassen Werte in den private Bereich übergeben Java Basics - Anfänger-Themen 5
C Collections: private Map Java Basics - Anfänger-Themen 4
M Wie private Methoden mit Asserstions testen? Java Basics - Anfänger-Themen 3
M Verständnisfrage zu JUnit Tests und private Methoden Java Basics - Anfänger-Themen 3
W private Array Loops Java Basics - Anfänger-Themen 4
H Privat ist nicht mehr private Java Basics - Anfänger-Themen 7
J Vererbung Zugriff auf private Variable Java Basics - Anfänger-Themen 10
A Variablen lokale Variable als private? Java Basics - Anfänger-Themen 3
A private string array Java Basics - Anfänger-Themen 5
B auf private Variable durch eine Methode zugreifen Java Basics - Anfänger-Themen 8
J Probleme mit verschiedenen Private Klassen Java Basics - Anfänger-Themen 3
C Comparator und private Variablen Java Basics - Anfänger-Themen 7
K Methoden als private deklarieren? Java Basics - Anfänger-Themen 13
K Protected und Private Deklaration Java Basics - Anfänger-Themen 8
F Im Konstruktor mit Settern auf private Attribute zugreifen - oder nicht? Java Basics - Anfänger-Themen 18
B Kapselung Klasse private, Konstruktor protected Java Basics - Anfänger-Themen 10
H NEtBeans: Fehler: XXX has private access... Java Basics - Anfänger-Themen 2
E einfache Frage zu private Java Basics - Anfänger-Themen 26
W Private Methode variablen übergeben..?! WIE! Java Basics - Anfänger-Themen 30
K OOP Datenkapselung mittels private - length Attribut bei Array Java Basics - Anfänger-Themen 3
L Private Methode in Subklasse? Java Basics - Anfänger-Themen 2
S Private Class Problem Java Basics - Anfänger-Themen 17
K Kann man Private-Konstruktoren doch aurufen? Java Basics - Anfänger-Themen 8
Luk10 Vererben von private instanzvariablen Java Basics - Anfänger-Themen 20
P zugriff auf private variablen Java Basics - Anfänger-Themen 5
A Allgemeine Frage zur Sichtbarkeit "private" Java Basics - Anfänger-Themen 5
berliner Klassen Vererbung und Zugriff auf innere private Variable Java Basics - Anfänger-Themen 22
Spin private Frage Java Basics - Anfänger-Themen 16
G Zugriff auf private Variablen einer inneren Klasse Java Basics - Anfänger-Themen 5
G Private Messages versenden Java Basics - Anfänger-Themen 13
S Zugriffe über Private Instanzvariablen Java Basics - Anfänger-Themen 3
R Private Methoden von auserhalb aufrufen Java Basics - Anfänger-Themen 2
N private variable vom typ einer klasse Java Basics - Anfänger-Themen 20
A in abstract Klasse private Variablen Java Basics - Anfänger-Themen 3
P Private Klassen Java Basics - Anfänger-Themen 4
F Frage zur Vererbung und Zugriffmodifikator private Java Basics - Anfänger-Themen 3
S private String text; -> "Illegal start of expression Java Basics - Anfänger-Themen 7
R Klasse nicht sichtbar(kein private-Fehler) Java Basics - Anfänger-Themen 2
R Private Klasse in Applet nutzen? Java Basics - Anfänger-Themen 9
B Instanzvariablen private? Java Basics - Anfänger-Themen 5
M Sichtbarkeit von private Java Basics - Anfänger-Themen 2
M OOP frage, private variablen default-wert zuweisen sinnvoll? Java Basics - Anfänger-Themen 5
M [SOLVED]private Daten head - neues objekt? Java Basics - Anfänger-Themen 12
H Vererbung:private Java Basics - Anfänger-Themen 7
T private final String oder final String? Was ist richtig? Java Basics - Anfänger-Themen 4
M Jede Variable als private, protected etc. deklarieren? Java Basics - Anfänger-Themen 7
U was macht "private" ? :) Java Basics - Anfänger-Themen 7
G private methode wird aus anderer klasse aufgerufen? Java Basics - Anfänger-Themen 3
megachucky wie bekomm ich ein private attribut aus einer andren klasse? Java Basics - Anfänger-Themen 18
C Kann mir jemand sagen warum public void unzulässig ist? Java Basics - Anfänger-Themen 2
Say public/default Interface Java Basics - Anfänger-Themen 9
berserkerdq2 Habe eine Klasse, welche public ist, diese hat eine public Methode, die nicht static ist. Wenn ich nun versuche aufzurufen Probleme? Java Basics - Anfänger-Themen 8
Denix The public type Main must be defined in its own fileJava(16777541) Java Basics - Anfänger-Themen 13
melaniemueller Datenkapselung Sichtbarkeit public Java Basics - Anfänger-Themen 4
NaZuRe Geld(Wert) von der public static void main in die public static void Blackjack Java Basics - Anfänger-Themen 2
S public static boolean Java Basics - Anfänger-Themen 4
Vamecruft Compiler-Fehler public static void zu static String ändern Java Basics - Anfänger-Themen 2
D public ArrayList(Collection<? extends E> c); Java Basics - Anfänger-Themen 2
J Methoden Methoden einer public class AutoCompleteTextField verwenden Java Basics - Anfänger-Themen 14
G Klassen Mit fremder Klasse auf public Methode zugreifen Java Basics - Anfänger-Themen 23
C Was macht `public class ClassName<T extends Comparable<T>>`? Java Basics - Anfänger-Themen 14
Javafan01 Dateiname und Public class Java Basics - Anfänger-Themen 4
C Methoden Unterschied zwichen public int, public static int und public static void Java Basics - Anfänger-Themen 2
A Methoden Unterscheid zwischen public und ohne Java Basics - Anfänger-Themen 9
J Frage zu: public static void main (String[]args) Java Basics - Anfänger-Themen 1
L RSA Public Key einlesen Java Basics - Anfänger-Themen 0
K Public Attribute oder getter - funktioniert leider beides hier nicht Java Basics - Anfänger-Themen 5
V Was bewirkt das Schlüsselwort extends in Verbindung mit class bzw. public class ? Java Basics - Anfänger-Themen 2
I Methoden public void paintComponent (Graphics g) Java Basics - Anfänger-Themen 4
M public static int in ActionListener Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben