printAL ...existe?

Olá Boa tarde a todos.

Estou estudando ArrayList pelo “Java Use a Cabeça” e em um exercício temos a seguinte intrução : printAL(a). Vejam o código:

[code]import java.util.*;

public class ArrayListMagnet {

public static void main(String[] args){
	
	ArrayList<String> a = new ArrayList<String>();
	
	a.add(0,"zero");
	a.add(1,"one");
	a.add(2,"two");
	a.add(3,"three");
	printAL(a);
}

}[/code]
a linha printAL(a); não compila. Será que é um erro do livro ou está faltando alguma coisa no códg. Alguém poderia me dizer ?

Você precisa definir esse método na sua classe. Uma definição simples desse método é:

void printAL (List&lt?&gt lista) {
    System.out.println (lista);
}

Ok! É verdade! vc está certo. E esse método estar bem no finalzinho do exercício; é que me faltou um pouco de atenção. Obg.

Só não esqueça de colocar um static nesse método, ou não irá compilar(vc está chamando ele dentro de um contexto estático, o método main).

Agora fiquei perplexo! Quer dizer que qdo invocamos um método que estar dentro de um método static, o método invocado obrigatoriamente também deve ser static ?