Difference between console and ttys

Sometimes when I open up the terminal (like just now) it says

Last login: Wed Jun 17 07:29:25 on console

sometimes it says ttys (like when I exit and open a new window/tab). What's the difference? and is something fishy going on?

Normally when you connect to a unix machine, you open a terminal, the console (/dev/console) is usually a dedicated device for root to boot from, go in single user and do maintenance....
Things have changed since... Lets say if you were to boot a linux PC that doesnt start X or is in single user, it will display on the console...then once you started X it becomes somehow "virtual" but you could open a console session by opening a dedicated terminal: using

xterm -C -T console

I know Im far from being clear...

I'm afraid I don't understand. Can you explain in a little more detail/laymen's terms, since I'm a newbie?

I was working last night with Java, and I compiled and ran programs from the terminal. Would that make a difference? Although the login time was this morning.

I tried my best not to enter in computing stuff...
But to answer simplay your question, we would need to know a bit more: Is you UNIX box a server or a workstation (or a PC...) what OS may help (for others to try to answer...)

I'm working on an iMac with leopard 10.5.7

OK
the best is to see who is connected:

who -uA

but syntax may be different (have no MacOSX...) so type man who
Since I have also no workstation like you but a PC with an Xserver installed to connect to the parc of boxes I administer this is my ouput:

ard # who -uA
vbe        pts/0        Jun 15 12:24   .     5252  160.XX.YY.85:0.0
vbe        ttyp1        Jun 18 13:42   .     7857  160.XX.YY.85:0.0
vbe        dtremote     Jun 15 12:10  old    5160  160.XX.YY.85:0

the dtremote is the initial connection (the graphic screen where you enter you name and passwd) then in the GUI in oder to work and type commands I have to open a terminal: pts/0 , in that terminal I typed:

ard # hpterm -C -T "ard Console"&
[1]     7856
ard # hpterm: display "160.XX.YY.85:0.0" is not authorized to take control of /dev/console

Saying I cant take control of that server's console since it has one and its active...
but it opened a new terminal : ttyp1

Remember UNIX is a preemptive multitasking multi-user system
And so each time you open a new "window" if that window is a terminal, it is like a new connection...

And so your main concern is to check you have no unwanted foreign connections to your system

Since you are a newbie, this may be of great interest for you:
OSXFAQ - Technical News and Support for Mac OS X