Vending Machine - Ajuda

Boa tarde, estou a ter dificuldades no meu código. queria cortar e meter numa nova classe o que diz int ESCOLHA até } while (ESCOLHA != 11); para no main poder chamar a classe e correr o código e gostaria de saber a solução para o meu problema.
Gostaria de saber como se faz um pagamento com cartao credito de um produto de uma vending machine
Obrigado

}
Main

package com.company;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Scanner;

public class Main {

public static void main(String args[]) {

    Scanner in = new Scanner(System.in);
    MaquinaVendas maquina = new MaquinaVendas();
    Produto[] main = maquina.darProdutos();

int ESCOLHA;
do {
System.out.println(“Menu da máquina”);
for (int i = 0; i < main.length; i++) {
System.out.println("Digite " + (i + 1) + " para " + main[i].darNome());
}
System.out.println(“Digite 11 para desligar a máquina”);
System.out.println(“Digite 12 para ligar a máquina”);
System.out.println(“Digite 13 Ver Stock Produtos?”);
System.out.print("Digite a sua escolha: ");
ESCOLHA = in.nextInt();

        if (ESCOLHA < 1 || ESCOLHA > 13) {
            System.out.println("Escolha Incorreta");
        } else if (ESCOLHA == 12) {
            System.out.println("Ligando a máquina");
        } else if (ESCOLHA == 11) {
            System.out.println("Desligando a máquina");

        } else if (ESCOLHA == 13){
            maquina.MenuMaquina();
        }else {
            maquina.descontarProduto(ESCOLHA - 1);
        }
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        try {
            System.out.println("Prima enter!");
            br.readLine();
        } catch (IOException e) {
            e.printStackTrace();
        }
    } while (ESCOLHA != 11);

}

}


MaquinaVendas

package com.company;
import java.text.DecimalFormat;
import java.util.Scanner;

public class MaquinaVendas {

public Produto produtos;
public Produto[] MaqP;
public MaquinaVendas() {

    MaqP= new Produto[10];
    MaqP[0] = new Produto("Água 50 cl", 1.50, 10);
    MaqP[1] = new Produto("Coca Cola 50 cl ", 2.00, 10);
    MaqP[2] = new Produto("Ice-Tea 50 cl ", 1.80, 10);
    MaqP[3] = new Produto("Bolo Madalena", 1.10, 10);
    MaqP[4] = new Produto("Bolacha Maria", 1.00, 10);
    MaqP[5] = new Produto("Batata Frita-Lays", 1.50, 10);
    MaqP[6] = new Produto("Kinder-Bueno", 1.70, 10);
    MaqP[7] = new Produto("Kinder-Delice", 1.70, 10);
    MaqP[8] = new Produto("Pastilhas", 1.00, 10);
    MaqP[9] = new Produto("Máscaras", 3.00, 20);

}

public void MenuMaquina() {
    for (int i = 0; i < MaqP.length; i++) {
        System.out.print(MaqP[i].darNome());
        System.out.print('\t');
        System.out.print(MaqP[i].darStock());
        System.out.println();
    }
}

Classe - Produto

package com.company;
import java.util.Scanner;

public class Produto{

private String nome;
private double preco;
private int stock;

public Produto(String nomeProduto,double precoProduto,int stockProduto) {
    nome = nomeProduto;
    preco = precoProduto;
    stock = stockProduto;
}

public String darNome() {
    return nome;
}

public double darPreco() {
    return preco;
}

public int darStock() {
    return stock;
}

public void reducaoStock() {
    if (stock > 0)
        stock -= 1;
}

}