Método não funciona

Ola pessoal, porque quando compilo esse código:

[code]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;
		}
	}
}

}[/code]

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

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.

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

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

[quote=javahunter]Ola pessoal, porque quando compilo esse código:

[code]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;
		}
	}
}

}[/code]

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[/quote]

Pegadinha do malandro :lol:

\ |_| /
hehehehe

desculpa ai pessoal, to dormindo.

void com retorno foi tenso.

obrigado mesmo assim .

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

[code]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();
      //...

          
}  

} [/code]

[quote=vanegomesl]Acho que o que você quis fazer foi algo do tipo:

[code]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();
      //...

          
}  

} [/code][/quote]

vlw, era isso mesmo