Pele que eu vi,tudo quando se vai usar em java tem que se criar um novo objeto por ex, JFrame tela = new JFrame();
por que é assim, e outra ,não pode simplesmente criar uma só e usá-la quando quiser?
Valeu dede já!!!
Por que tudo tem que ser instanciado?
6 Respostas
Pesquise um pouco sobre orientação a objeto, o que é classe, o que é objeto e como usa-los.
Ta mas poderiam me dar uma pitada sobre isso! Tenho uma pequena noção disso mas,não entendi o porque:
Pele que eu vi,tudo quando se vai usar em java tem que se criar um novo objeto por ex, JFrame tela = new JFrame();
por que é assim, e outra ,não pode simplesmente criar uma só e usá-la quando quiser?
Valeu dede já!!!
Jonatas, simplismente por ser orientada a objetos.
Vc precisa instaciar um objeto de uma classe para poder usufruir de seus métodos e propriedades! Java já tem diversas classes implementadas pra você não precisar reinventar a roda portanto da uma olhada em algum material de orientação a objetos e fque por dentro das principais classes nativas do java.
Pelo que eu vi,tem que instanciar os objetos,pois quando se cria um novo objeto, esse objeto herda dessa classe de qual ele foi instanciado seus atributos, metodos etc,podendo assim implementar esse novo objeto.
Eu pensava que dava por exemplo eu chegar , chamar o nome da classe e usa-la,sem ter criar uma nova copia a todo momento.
O main não precisa ser instanciado,isso tem alguma coisa a ver com o static?
Valeu desde já!!!
O main é um método e não um objeto!
Beleza, irmão?
Você precisa dar uma estudada em orientação a objetos!
Vamos dar uma comentada sobre o que você escreveu:
Na verdade não é isso! Quando você instancia uma classe, ou seja, cria um objeto, você já tem acesso a seus métodos, herança é outra história. A classe é apenas uma descrição de como um objeto se comporta.
Isso é possível, quando um método ou atributo public é declarado como static. Assim, podemos chamar seu método (ou atributo) utilizando o nome da classe “.” nome do método (ou atributo). Exemplo: System.out.println();
println() é um método static da classe System.out, não é necessário criar uma instância dessa classe para se ter acesso a esse método.
Pele que eu vi,tudo quando se vai usar em java tem que se criar um novo objeto por ex, JFrame tela =new JFrame();
por que é assim, e outra ,não pode simplesmente criar uma só e usá-la quando quiser?
Por default, quando um objeto é criado o valor null é atribuído para o mesmo, por exemplo:
Date dataAtual;
O valor atribuído é null. É necessário criar uma instância da classe, ou seja, uma referência para um objeto do tipo Date. Desse modo,
Date dataAtual = new Date();
Agora dataAtual é uma referência para um objeto do tipo Date.
Bom, acho que falei demais! Espero ter ajudado. Qualquer coisa é só perguntar.
Paz!