style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

Constructor que retornar parametros

que tal bueno el titulo lo dice la idea es esa . o algo asi quiero saber si se puede

digamos que por ejemplo tengo una clase que calcula la suma de dos numeros, lo ideal seria hacer la clase y usar un metodo que reciba los numeros y devuelva eso, pero lo que yo quiero es saber si se puede hacer directamente sobre el costructor.

ejemplo digamos de la forma clasica seria asi, suponiendo que ya tengo la clase que hace la suma

Suma suma = new Suma();

System.out.println(suma.resultado(10,2)); //me devolveria 12

ahora lo que yo quiero es que sea asi

System.out.println(new Suma(10,2));

como puedo hacer que el constructor que recibe los parametros me devuela algo, buscando vi por ahi que sobre escriben la clase toString()
pero tendria que convertir mi resultado de int a String y si cuando lo llamo necesito que sea int tengo que pasar de String a int nuevamente se me hace unos pasos innecesarios..

alguna sugerencia o de plano no se puede ya le busque mucho y en las apis de java no encuentro si esta o no, se me complica algo el ingles

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Jose Manuel

Creo que no se puede. Ya que

Creo que no se puede. Ya que una de las características de un constructor es que no tiene un tipo de valor.

Imagen de ezamudio

no se puede

un constructor devuelve necesariamente una instancia de la clase cuyo constructor estás invocando. Y para el ejemplo que estás poniendo sería mejor en todo caso tener métodos estáticos; no necesitas tener una instancia de Suma.

Como dice ezamudio: public

Como dice ezamudio:

public static int suma( int a , int b ) {
    return a + b;
}
...
System.out.println( suma( 10, 2 ) ); // imprime 12

La pregunta es, para que quieres tener una instancia al objeto? Quizá lo que quieres hacer se puede hacer de una forma diferente.

Saludos.

Imagen de genitalico

gracias por las respuestas

gracias por las respuestas entonces no se puede :D ..
lo que dice ezamudio de hacer mejor métodos estáticos suple eso que pido, aun que solo era una duda que tenia, pero ya me achaco otra
por ejemplo por que entonces si quiero crear una ventana y digamos heredo un JFrame

y para que me salga mi ventana puedo hacer simplemente esto:

public static void main(String[]args)
{
new Ventana();
}

lo mismo sucederia si hago un JPanel y lo meto dentro de un JFrame podria
solo hago digamos esto
new miPanel();

seria solo una característica especial para las clases nativas de java?

Imagen de Jose Manuel

No solo heredando de JFrame

No solo heredando de JFrame se puede. Usando el atributo JFrame tambien es posible.
Y no solo es propio de las clases de java. Tus propias clases pueden hacerlo.

Es crear un objeto, como:

 Clase obj = new Clase(); //Esto es lo normal
new Clase(); //Esta forma tambien es igual.

La primer forma crea un objeto de la clase y una instancia, con el objeto puedes usar las propiedades de la clase.
La segunda forma crea la instancia de la clase pero sin objeto.

Si me equivoque que alguien me dentenga!, =) ah no, que alguien me corrija.

Imagen de genitalico

bien ya entendi la idea

bien ya entendi la idea gracias por su respues y comentarios ¡¡

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">