GNU Smalltalk - Herencia y métodos de parámetros múltiples / constructores

Digamos que estoy tratando de traducir las siguientes clases de Java a GNU Smalltalk:

public abstract class Account {

    protected String number;
    protected Customer customer;
    protected double balance;

    public abstract void accrue(double rate);

    public double balance() {
        return balance;
    }

    public void deposit(double amount) {
        balance += amount;
    }

    public void withdraw(double amount) {
        balance -= amount;
    }

    public String toString() {
        return number + ":" + customer + ":" + balance;
    }
}

public class SavingsAccount extends Account {

    private double interest = 0;

    public SavingsAccount(String number, Customer customer, double balance) {
        this.number = number;
        this.customer = customer;
        this.balance = balance;
    }

    public void accrue(double rate) {
        balance += balance * rate;
        interest += interest * rate;
    }

}

Me cuesta entender cómo puedo escribir métodos / constructores que tomen múltiples parámetros. Esto es lo que tengo hasta ahora:

Object subclass: Account [

    |number customer balance|

    balance [
        ^balance
    ]

    deposit: amount [
         balance := balance + amount
    ]

    withdraw: amount [
        balance := balance - amount
    ]

    asString [
        ^number asString, ':', customer asString, ':', balance asString
    ]

]

Account subclass: SavingsAccount [

    |interest|

    SavingsAccount class [
        new [ "add some sort of support for multiple arguments?"
           "call init"
        ]
    ]

    init [ "add some sort of support for multiple arguments?"
         interest := 0.
         balance := accountBalance.
         customer := accountCustomer.
         number := accountNumber
    ]

    accrue: rate [
        balance := balance + (balance * rate).
        interest := interest + (interest * rate)
    ]

]

Unas cuantas preguntas:

¿Cómo puedo hacer de Account una clase abstracta en Smalltalk?¿Estoy en lo cierto al suponer que todas las variables de instancia de la Cuenta son accesibles por nombre en la Clase SavingsAccount?¿Cómo puedo implementar algo que imite al constructor de múltiples parámetros en la Clase de Cuenta de Ahorro de Java?

Respuestas a la pregunta(1)

Su respuesta a la pregunta