Ajuda em Erro "Cannot find symbol"

Boa noite.
Estou com um erro aqui. Não sei explicar a razao, entao segue abaixo o código

[code]public class PayrollSystemTest {
public static void main(String[] args) {

    SalariedEmployee salariedEmployee = new SalariedEmployee("Johnn", "Smith", "111-11-1111", 800.00);
    HourlyEmployee hourlyEmployee = new HourlyEmployee("Karen", "Price", "222-22-2222", 16.75, 40);
    ComissionEmployee comissionEmployee = new ComissionEmployee("Sue", "Jones", "333-33-3333", 10000, .06);
    BasePlusComissionEmployee basePlusComissionEmployee = new BasePlusComissionEmployee("Bob", "Lewis", "444-44-4444", 5000, .04, 300);
    
    System.out.printf("%s\n%s: $%.2f\n\n", salariedEmployee, "earned", salariedEmployee.earnings());
    System.out.printf("%s\n%s: $%.2f\n\n", hourlyEmployee, "earned", hourlyEmployee.earnings());
    System.out.printf("%s\n%s: $%.2f\n\n", comissionEmployee, "earned", comissionEmployee.earnings());
    System.out.printf("%s\n%s: $%.2f\n\n", BasePlusComissionEmployee, "earned", basePlusComissionEmployee.earnings());

    Employee[] employees = new Employee[4];
    
    employees[0] = salariedEmployee;
    employees[1] = salariedEmployee;
    employees[2] = salariedEmployee;
    employees[3] = salariedEmployee;
    
    System.out.println("Employees processed polymorphically: \n");
    
    for (Employee currentEmployee : employees) {
        System.out.println(currentEmployee);
        
        if (currentEmployee instanceof BasePlusComissionEmployee){
            BasePlusComissionEmployee employee = (BasePlusComissionEmployee) currentEmployee;
            employee.setBaseSalary(1.10 * employee.getBaseSalary());
            System.out.printf("new base salary with 10% increase is: $%,.2f\n", employee.getBaseSalary());
         }
        System.out.printf("earned $%,.2f\n\n", currentEmployee.earnings());
        
    }
    for (int i = 0; i < employees.length; i++) {
        System.out.printf("Employee %d is a %s\n", i, employees[i].getClass().getName());
    }
}[/code]

Alguém poderia me explicar porque a parte em negrito está dando esse erro?
System.out.printf("%s\n%s: $%.2f\n\n", BasePlusComissionEmployee, “earned”, basePlusComissionEmployee.earnings());

não coloca o nome de uma variável igual ao nome da classe…

tu escreveu assim:

System.out.printf("%s\n%s: $%.2f\n\n", BasePlusComissionEmployee, "earned", basePlusComissionEmployee.earnings()); 

e era pra ser assim:

System.out.printf("%s\n%s: $%.2f\n\n", basePlusComissionEmployee, "earned", basePlusComissionEmployee.earnings()); 

Viu a diferença? Um simples B maiúsculo, estas tentando imprimir a classe e não o objeto

[quote=gaulix]não coloca o nome de uma variável igual ao nome da classe…

tu escreveu assim:

System.out.printf("%s\n%s: $%.2f\n\n", BasePlusComissionEmployee, "earned", basePlusComissionEmployee.earnings()); 

e era pra ser assim:

System.out.printf("%s\n%s: $%.2f\n\n", basePlusComissionEmployee, "earned", basePlusComissionEmployee.earnings()); 

Viu a diferença? Um simples B maiúsculo, estas tentando imprimir a classe e não o objeto[/quote

Valeu!
Eu já tinha visto isso, mas eu estava copiando igualzinho ao livro, até as maiusculas e minusculas. Por isso fiz em maiuscula. Mas já que é isso, valeu =P

T+
Otto