Acessar classe

Bom dia, eu estou começando a estudar java, e vi em algumas apostilas que o editor cria uma classe em um arquivo separado.
por ex: eu tenho o arquivo main.java e um outro conecta.java, como eu faço pro arquivo main enxergar os atributos que estão no conecta.java?

Oi,

Depende dos modificadores de acesso

Se os atributos da classe estiverem declarados como public você acessa diretamente no Main assim

[code]class Main {

public static void main(String args[]) {
MinhaClasse classe = new MinhaClasse(‘10’,200,3);
System.out.println(classe.atributo) ;
}
}[/code]

Abs

Eh como ele disse x)…

Cria um Objeto da Classe q ai esse objeto enxerga o metodo…

Tipo mas se o modificador for private, ai vc tem q cria get e/ou set do atributo pra acessar ele…

Quando eu digito: System.out.println("Nome: " + classe.atributo), aparece o seguinte erro:

cannot find symbol
symbol: variable atributo
location: test.MinhaClasse

operator + cannot be applied to java.lang.String, test.MinhaClasse.atributo

Aparentemente ele não reconheceu o nome atributo, posta o código aqui da sua classe e do Main usando as tags code assim

meu código

Abs

Olá,

Primeiro, dá uma lida no tutorial indicado pelo André.
Segundo, coloque a MinhaClasse (ou seria a SuaClasse? :smiley: Desculpe, não resisti) aí pra gente ver como ela tá.

O código é esse(mas não sei se está correto):

Teste.java

[code]public class Teste {

public static void main(String[] args) {
	MinhaClasse classe = new MinhaClasse();
	System.out.println("Nome: " + classe.nome);
}

}[/code]

MinhaClasse.java

public class MinhaClasse {

    public MinhaClasse() {
    	public String nome = "Paulinho";
    }
    
    
}

Tenta…

[code]public class MinhaClasse {
String nome;

public MinhaClasse() {
	nome = "Paulinho";
}

}[/code]

O pessoal com mais experiência pode explicar o porque funciona com o atributo declarado fora do construtor.

quando você declara algo assim

[code]class MinhaClasse {

private int minhaVariavel;

public static void main (String args[]) {
	MinhaClasse minhaClasse = new MinhaClasse();
	System.out.println(minhaClasse.minhaVariavel);
}

}[/code]

Você está declarando uma variável de instância, ou seja, quando você fizer o new - instanciar o objeto - esta variável irá ser inicializada com o valor default, 0 para int, 0.0 para double, null para objetos, assim por diante…

Aqui tem mais detalhes de fundamentos da linguagem, bons estudos :smiley: