Foro sobre Java SE > Engañar al método main
Como public static String contenidoExtraido; es publica y estática, puedes acceder a ella directamente:
extraeComentario.contenidoExtraido = contenidoExtraido.toString();
Pero intenta no usar el mismo nombre.
No entiendo por qué quieres "engañar" al main, aparte de que no se puede.
main(String[] args) solamente se usa para iniciar la aplicación, y normalmente solo debe haber uno en la aplicación.
Si lo que quieres es devolver un valor desde una clase, lo que debes es crear un método que lo devuelva, sin más.
public class ExtraeComentario {
public StringBuilder getComentario() {
return extraerTexto(capturarTextoDeArchivo());
}
En otra clase cualquiera, que tenga una dependencia declarada respecto de ExtraeComentario:
ExtraeComentario extraeComentario = new ExtraeComentario().
StringBuilder comentario = extraeComentario.getComentario();
Quizás te venga bien dar un buen repaso a estos conceptos:
http://docs.oracle.com/javase/tutorial/java/javaOO/classes.html
Hey! @Unai Valle & @choces..., lo arreglo y publico la solución... Saludos
listo @choces! Así era, ni (+) ni (-)
¿Se puedo forzar al método main para "agarrar" el valor de una de sus variables?, ¿de tal forma que la variable global
public static String contenidoExtraido;
tenga el mismo valor que la variable localStringBuilder contenidoExtraido = extraerTexto(capturarTextoDeArchivo());
del método main?import java.io.*;
public class extraeComentario {
public static String contenidoExtraido;
public void main(String[] args) {
StringBuilder contenidoExtraido = extraerTexto(capturarTextoDeArchivo());
}
...