Gets and Sets

Tenho duas classes em pacotes diferentes, onde os atributos de uma das classes saõ private; fiz os gets e sets,mas sempre que tento utilizar os atributos da outra classe da erro; ja importei a outra classe e mesmo asssim continua com erro. Gostaria de saber se estou fazendo alguma coisa errada, e como fazer isso de maneira correta. De preferência gostaria de códigos como exemplo.Obrigado

Colocando o erro ficaria mais fácil de identidicar. T+

O erro depende de como você está querendo utilizar esses atributos… Sem o seu código não da para saber… Um exemplo seria assim

public class Classe1 {
  private String a;
  private int b;

  public void setA( String a ) {
    this.a = a;
  }

  public void setB( int b ) {
     this.b = b; 
  }

  public String getA() {
    return a;
  }

 public int getB() {
    return b;
  }
}

import .....

public class Classe2 {
  public static void main(String[] args) {
    Classe1 c = new Classe1();
    c.setA("A");
    c.setB(10);
    String a = c.getA();
    int b = c.getB();
   
    System.out.println("getA() = " + a + ", getB() = " + b);
  }
}

Estais usando alguma IDE para executar os teus programas ou estais fazendo isto via notepad? Se estiveres fazendo “na mão” pode ser problema de classpath porque aparentemente não há erro no acesso aos atributos. Eles estão encapsulados em Classe1 e são acessados indiretamente em Classe2. Como está a definição dos teus pacotes e como tu faz os imports? T+

iktuz quem fez esse código ai fui eu :grin:

Putz! É que BrunoBastos e BrenooSantos passam perto não :grin:

public class Settings {

private Connection con;
private Driver d;
private String banco;
private String user;
private String password;
private Statement stm;
private ResultSet rs;


public String getBanco() {
	return banco;
}
public void setBanco(String banco) {
	this.banco = banco;
}
public Connection getCon() {
	return con;
}
            public void setCon(Connection con) {
	this.con = con;
}

public class Cliente extends Settings implements ICliente{

/**
 * This method search for a specif name on bank. 
 */
public void procurarnome(){
	
	try {
		
		con = DriverManager.getConnection("");
		stm = con.createStatement();
		rs = stm.executeQuery("select NOME from CADASTRO where nome =  '"+ nome +"'   ");
		stm.close();
	}
	catch (SQLException e) 
	{
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
	finally
	{
		try
		{
			con.close();
		}
		catch(SQLException e)
		{
			System.out.println("Falha ao fechar conexão");
			e.printStackTrace();
		}
	}
}

Nesse caso o eclipse pede para eu criar o campo con na classe cliente, no caso poderia resolver criando um objeto da classe Settings na classe flha,mas ele ainda diz que no caso de eu fazer: settings.getcon() = DriverManager.getconnection();.
Ai tenho que colocar uma variavel do lado esquerdo; então qual a vantagem de fazer o get e set, estou fazendo algo errado?

Faz sentido, o erro é porque tu usa dentro de uma classe (Client) um objeto (con) que estaria declarado em outra (Settings). Como Cliente é filha de Setting deves pegar a conexão via método getCon(). Mas ainda há um problema. A classe Settings não está inicializando os objetos! T+

Para que “Cliente” consiga acessar o atributo “con” ele deve ser protected

public class Settings { protected Connection con;