The advantage of going with Java, is that your code (and equally importantly - your skills) are very portable.
The disadvantage is, it's too easy. Yes, too easy - a bit like Visual Basic on the PC - a lot of developers can write programs without understanding a lot of the underlying concepts which they need to know. In that respect, I can see why a lot of colleges here teach C++ and assembler first, then Java later on.
I haven't done much Java development on OSX, but if code portability wasn't my primary concern, I'd go for Objective C & Cocoa.
The disadvantage is, it's too easy. Yes, too easy - a bit like Visual Basic on the PC - a lot of developers can write programs without understanding a lot of the underlying concepts which they need to know. In that respect, I can see why a lot of colleges here teach C++ and assembler first, then Java later on.
I haven't done much Java development on OSX, but if code portability wasn't my primary concern, I'd go for Objective C & Cocoa.