Srs, bom dia!
Eu tenho três classes na minha aplicação, são elas: ATM, Screen e Transaction. Á classe Screen tem função de registrar entrada de dados realizada pelo usuário. Á Transaction é uma classe do tipo abstract em função de um método execute que é utilizado em outras classes concretas.
Meu problema e seguinte, eu estou tentando criar uma referência na classe Transaction para Screen, mas não estou tendo sucesso.
public abstract class Transaction
{
private int accountNumber; // indicates account involved
private Screen screen; // ATM's screen
// Transaction constructor
public Transaction( int userAccountNumber, Screen atmScreen )
{
screen = new Screen();
} //end
Eu fiz exatamente o mesmo procedimento, mas entre ás classes ATM e Screen. Está funcionando perfeitamente.
public class ATM
{
private boolean userAuthenticated; // whether user is authenticated
private int currentAccountNumber; // current user's account number
private Screen screen; // ATM's screen
private Keypad keypad; // ATM's keypad
private CashDispenser cashDispenser; // ATM's cash dispenser
private DepositSlot depositSlot; // ATM's deposit slot
private BankDatabase bankDatabase; // account information database
// no-argument ATM constructor initializes instance variables
public ATM()
{
userAuthenticated = false; // user is not authenticated to start
currentAccountNumber = 0; // no current account number to start
screen = new Screen(); // create screen
keypad = new Keypad(); // create keypad
cashDispt = new DepositSlot(); // create deposit slot
bankDatabenser = new CashDispenser(); // create cash dispenser
depositSloase = new BankDatabase(); // create acct info database
} // end no-argument ATM constructor
Minha questão é: não é permitido referenciar e invocar um objeto dentro de de uma classe do tipo “abstract”?