Duvida instanciamento

Boa noite!
Estou fazendo um trabalho para faculdade onde preciso criar um pequeno jogo RPG utilizando a matéria aprendida em aula, porém estou com problema no codigo abaixo, onde estou tentando criar um arraylist de itens que serão dropados quando derrotar um monstro.

problema 1: na classe ControleDeItens só consigo instanciar a classe Itens se estiver dentro de um método, caso contrario aparece erro de sintaxe.
problema 2: se coloco dentro de um método não consigo acessar este método da classe ControleDeJogo também aparece erro de sintaxe

[code]import java.util.Scanner;

public class ControleDeJogo {

ControleDeItens controleDeItens;
Personagem personagem;
Scanner leitor = new Scanner(System.in);

public void criarJogo(){
	personagem=criarPersonagem();
}//criarJogo

public Personagem criarPersonagem(){
	System.out.println("Classe:\n1-Guerreiro:\n2-Mago:\n3-Arqueiro\n4-Ladino\n0-Voltar so menu:");
	int opcao = leitor.nextInt();
	
	if(opcao == 1){
		Guerreiro guerreiro = new Guerreiro();
		guerreiro.inserirDados();
		return guerreiro;
	}else if(opcao == 2){
		Mago mago = new Mago();
		mago.inserirDados();
		return mago;
	}else if(opcao == 3){
		Arqueiro arqueiro = new Arqueiro();
		arqueiro.inserirDados();
		return arqueiro;
	}else{			
		Ladino ladino = new Ladino();
		ladino.inserirDados();
		return ladino;
	}
}

}[/code]

[code]import java.util.ArrayList;

public class ControleDeItens {

ArrayList<Item> itens = new ArrayList<>();

public void criarItem(){
	Item novoItem = new Item();
	novoItem.setTipo("teste");
	novoItem.setNome("teste");
	novoItem.setForca(1);
	novoItem.setPrecisao(1);
	novoItem.setDestreza(1);
	novoItem.setInteligencia(1);
	novoItem.setDefFisica(1);
	novoItem.setDefMagica(1);
	itens.add(novoItem);
}

}[/code]

[code]public class Item {

String nome,tipo;
int forca, precisao, destreza, inteligencia, dFisica, dMagica;

public String getNome() {
	return nome;
}
public void setNome(String nome) {
	this.nome = nome;
}
public int getForca() {
	return forca;
}
public void setForca(int forca) {
	this.forca = forca;
}
public int getPrecisao() {
	return precisao;
}
public void setPrecisao(int precisao) {
	this.precisao = precisao;
}
public int getDestreza() {
	return destreza;
}
public void setDestreza(int destreza) {
	this.destreza = destreza;
}
public int getInteligencia() {
	return inteligencia;
}
public void setInteligencia(int inteligencia) {
	this.inteligencia = inteligencia;
}
public int getDefFisica() {
	return dFisica;
}
public void setDefFisica(int dFisica) {
	this.dFisica = dFisica;
}
public int getDefMagica() {
	return dMagica;
}
public void setDefMagica(int dMagica) {
	this.dMagica = dMagica;
}
public String getTipo() {
	return tipo;
}
public void setTipo(String tipo) {
	this.tipo = tipo;
}

}[/code]

Coloca em escopo global, e instancia no construtor.