Static metodos e Switch

Galera estou precisando da ajuda de vcs, seu falar BESTEIRA por favor me corrijam…

Tive uma aula há “muito tempo” de Java com OO…

E me lembro do instrutor dizendo que o método MAIN é na verdade do contrutor da classe, ou seja, o método que é acionado toda vez que a classe é instanciada, ele falou q o main é que você pode chamar outros métodos dentro da classe, em VB temos o Sub Main() que é disparado toda vez que a aplicação é executada… a dúvida é a seguinte

como chamar um método a partir do main da classe, sendo que do MAIN só é possível chamar métodos STATICOS…
Ex:

[code]public class principal {

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

public int inicio() {
//Códigos
}

}[/code]

Como chamar o método início de dentro do main sem transformar o método em static… pois eu li um tutorial aqui no GUJ e me parece que não é uma boa usar variáveis e métodos staticos…


Outra coisa,
o SWITCH do java só é possível fazer com int ???
Tem alguma forma de fazer um Switch COM STRINGS ou Chars?

Alguém pode me dar um heeeelp…

falow

O método main não é o Construtor da classe!

Se voce fizer uma classe com o main dentro, voce pode instancia-la dentro do main, como no exemplo:

class Exemplo{
        Exemplo(){ //faz qq coisa
        }
         public static void main (String args []){
                  (new Exemplo).print();
         }
         public void print(){ System.out.println("OPA");}
}

Voce pode colocar qualquer codigo valido dentro do construtor que vai funcionar!

O switch aceita outros tipos tambem, como char!

Esse instrutor ai deve saber muito de Java, rsrssrs…

O construtor da classe deve ter o mesmo nome da classe e não possuir nenhum tipo de retorno, exemplo:

public class Teste { public Teste() { // construtor da classe... } }

O método main é o ponto de entrada de um programa, é o método que a JVM procura quando seu programa é iniciado…

T+

Blz, estou quase pegando… então me respondam… qual a diferença na PRÁTICA do MAIN para o CONTRUTOR… os dois são acionados quando a classe é executada?

Outra coisa
Alguém pode colocar um exemplo de Switch com CHAR e com STRING naum to conseguindo fazer…

Value

O main é chamado quando seu programa é carregado. O construtor de uma classe é chamado sempre que um objeto dessa classe é criado.

Não tem como fazer switch com String. Com char fica assim:

[code]char c = ‘d’;

switch© {
case ‘a’:
System.out.println(“c = a”);
break;
case ‘b’:
System.out.println(“c = b”);
break;
case ‘c’:
System.out.println(“c = c”);
break;
case ‘d’:
System.out.println(“c = d”);
break;
}[/code]

T+

Com String não é possivel, mas voce pode fazer com int e literais:

        char c='A'; 
        switch(c){
        case 1:break;
        case 2:break;
        default:break;
        }

Blz… galera esperta… entendi perfeitamente!
Muito obrigado

Constructor de classe, pra mim, é outro bicho: O método “”:

public class Teste {
  public static final Integer ISTO_SERA_DEFINIDO_NA_CARGA_DA_CLASSE = new Integer(1);

  static {
     // E isto também
  }

Tô enganado eu? Tem culpa eu?

E antes que me esqueça: Existe um artifício para fazer switch em String: Utilize enums do Java 5!