Método não funciona

6 respostas
javahunter
Ola pessoal, porque quando compilo esse código:
public class Test {
	
	public static void main(String[] args) {
		
		int height = 50;
		
		public void getHeight() {
			
			return height;
		}
		
		public void setHeight(int ht) {
			
			if (ht > 9) {
				
				height = ht;
			}
		}
	}
}

dispara esse erro:

C:\>javac Test.java
Test.java:7: error: illegal start of expression
public void getHeight() {
^
Test.java:7: error: illegal start of expression
public void getHeight() {
^
Test.java:7: error: ';' expected
public void getHeight() {
^
Test.java:12: error: illegal start of expression
public void setHeight(int ht) {
^
Test.java:12: error: illegal start of expression
public void setHeight(int ht) {
^
Test.java:12: error: ';' expected
public void setHeight(int ht) {
^
Test.java:12: error: ';' expected
public void setHeight(int ht) {
^
7 errors

Não tenho ideia de onde esta o problema

Abraço

6 Respostas

Rodrigo_Sasaki

Uau hehehehe :slight_smile:

Vamos pelo começo, você não pode declarar um método dentro de outro assim, isso não é uma sintaxe válida.

E no método que você fez, você o declarou como void, porém indicou um retorno.

Eu acho que você está bem confuso, sugiro que pegue um livro/apostila/tutorial de java básico e tende entender as coisas passo a passo.

Lucas_Abbatepaolo

Pq vc está criando um metodo dentro do outro!?

vc declara o metodo main e tenta criar metodos dentro dele…

Filipe_A
javahunter:
Ola pessoal, porque quando compilo esse código:
public class Test {
	
	public static void main(String[] args) {
		
		int height = 50;
		
		public void getHeight() {
			
			return height;
		}
		
		public void setHeight(int ht) {
			
			if (ht > 9) {
				
				height = ht;
			}
		}
	}
}

dispara esse erro:

C:\>javac Test.java
Test.java:7: error: illegal start of expression
public void getHeight() {
^
Test.java:7: error: illegal start of expression
public void getHeight() {
^
Test.java:7: error: ';' expected
public void getHeight() {
^
Test.java:12: error: illegal start of expression
public void setHeight(int ht) {
^
Test.java:12: error: illegal start of expression
public void setHeight(int ht) {
^
Test.java:12: error: ';' expected
public void setHeight(int ht) {
^
Test.java:12: error: ';' expected
public void setHeight(int ht) {
^
7 errors

Não tenho ideia de onde esta o problema

Abraço

Pegadinha do malandro :lol:

javahunter

\ |_| /
hehehehe

desculpa ai pessoal, to dormindo.

void com retorno foi tenso.

obrigado mesmo assim .

vanegomesl

Acho que o que você quis fazer foi algo do tipo:

public class Test {  
        int height = 50;  
 
        public int getHeight() {  
              
            return height;  
        }  
          
        public void setHeight(int ht) {  
              
            if (ht > 9) {  
                  
                height = ht;  
            }  
        }  


    public static void main(String[] args) {  
          Test novoTest = new Test();
          //...

              
    }  
}
javahunter
vanegomesl:
Acho que o que você quis fazer foi algo do tipo:
public class Test {  
        int height = 50;  
 
        public int getHeight() {  
              
            return height;  
        }  
          
        public void setHeight(int ht) {  
              
            if (ht > 9) {  
                  
                height = ht;  
            }  
        }  


    public static void main(String[] args) {  
          Test novoTest = new Test();
          //...

              
    }  
}

vlw, era isso mesmo

Criado 15 de janeiro de 2013
Ultima resposta 15 de jan. de 2013
Respostas 6
Participantes 5