Suicidio de objeto

Eu escrevi uma classe e declarei um construtor parametrizado para ele, preciso que o unico construtor chamado seja este que recebe um objeto, minha classe só pode continuar se este objeto for recebido, para garantir que o construtor sem parametros nao faça bobagem de permitir a iniciacao do objeto, gostaria de saber se existe alguma forma dele se “matar”, algo como

this = null;

isso não funciona, mas o que posso fazer?
ps: é um objeto que gostaria de distribuir…

rapaz… eu n entendi muito o que vc falou, mas se vc cria um construtor para classe o construtor default n eh criado. Entao se vc PRECISA que a classe so tenha um construtor eh so fazer um po…

Tipo, qnd o construtor default eh chamado, valor default sao dados a variaveis de instancia, entao, se vc tem uma variavel que iria referenciar outro objeto, essa variavel seria null.

Tomara que eu tenha ajudado um pouco

é só vc declarar o seu construtor como private

Depois que é compilado, o construtor padrão é criado, mesmo voce não tendo declarado, pelo menos me disseram isso em outro post, acho que foi o cv ou o louds, quanto ao construtor private, nunca vi isso, na minha concepção isso não eh permitido, mas valeu pela ideia, acho que vou disparar uma exceção dentro desse construtor para evitar problemas maiores…
Obrigado.

O construtor padrao soh eh criado na falta de outro, se vc fornecer um alternativo ele nao será criado…

é permitido e inclusive o padrão Singleton utiliza-se deste para garantir instanciação única…

public class MySingleton {
	
	private static final MySingleton instance ;
	
	static{
	
		instance = new MySingleton();
		
	}
	
	private MySingleton(){
		
	}
	
	public static MySingleton getInstance(){
		return instance;
	}
	
}

Espero ter ajudado…

Abraços

[code]public class MinhaClasse {

private Integer value;

public MinhaClasse( Integer i ) throws IllegalArgumentException {
if( i == null ) throw new IllegalArgumentException( );
this.value = i;
}
}[/code]

Esse lance de “eu acho isso”, “deve ser assim” eh pedir pra lever bomba.

Antes de tudo, existe a especificacao da linguagem, que diz tudo o que ela pode e nao pode fazer.

E, na pior das hipoteses, eh soh fazer um programinha de teste para verificar os fatos. Mais simpls e rapido que ficar bolando suposicoes e digitar todo o texto tentando explicar tal.

Rafael