Quoted Text Here
i got this code from a book i am practicing with and when i try to compile it returns the following error

EmployeeTest.java:30: incompactible types
found : java.util.Date
required: Date
hireDay = calendar.getTime();

please how do i debug it

import java.util.*;


public class EmployeeTest
{
    public static void main (String[] args)
    {
        Employee[] staff = new Employee[3];

        staff[0] = new Employee("Carl Cracker", 75000, 1987, 12, 15);
        staff[1] = new Employee("Harry Hacker", 50000, 1989, 10, 1);
        staff[2] = new Employee("Tony Tester", 40000, 1990, 3, 15);

        for(Employee e : staff)
            e.raiseSalary(5);

        for(Employee e : staff)
            System.out.println("name=" +e.getName() + ", salary=" + e.getSalary() + ",hireDay="
                + e.getHireDay());
    }
}

class Employee
{
    public Employee (String n, double s, int year, int month, int day)
    {
        name = n;
        salary = s;
        GregorianCalendar calendar = new GregorianCalendar(year, month, day);
        hireDay = calendar.getTime();
    }

    public String getName()
    {
        return name;
    }

    public double getSalary()
    {
        return salary;
    }

    public Date getHireDay()
    {
        return (Date) hireDay;
    }

    public void raiseSalary(double byPercent)
    {
        double raise = salary * byPercent/100;`Inline Code Example Here`
        salary += raise;
    }

    private String name;
    private double salary;
    private Date hireDay;
}

Recommended Answers

All 7 Replies

The code compiles for me (after I fix a comment on line 50)
Do you have another Date class defined on your PC?

EmployeeTest.java:30: incompactible types

What compiler are you using? I've never seen this error before. It's best to copy and paste error messages and not type them in.

import java.util.*;

This needs to go in Employee class as well.

This needs to go in Employee class as well.

Not if there is only one source file.

Just give proper comment at line 50 after semicolon.(like // for comment)
The code will compile successfully and also run perfectly.
It has worked in my computer.
So just try it.

sorry i replied so late, i got error when i tried posting the thread so i had to start a new thread to understand how to insert codes and sorry about the typographical error.

Your code works for me.
There is no problem in the code & it is written in the book then it cannot be wrong.
It only gives problem at line 50 where you written:

Inline Code Example Here

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.