Java and Objective C are the preferred, and for that matter only languages for programming OSX at any level above the console. Given your familiarity with OO languages and C, I wholeheartedly recommend Objective C. It is much, much simpler than C++. It feels like it was designed with OO in mind, as opposed to C++, which feels like a half-assed attempt to bolt OO onto C IMHO. If you have any grasp on OO programming, you should be up to speed within a week or so. Don't even consider using Swing w/ OSX's current L&F. It's horrible. File dialogs are the biggest offender I've found so far. By using the java<->objc bridge I suppose you could actually write your code in both languages. It's my understanding that you can create instances of Java classes and call their methods from ObjC objects although I believe Apple's main intention was the other way around. By choosing ObjC, you also have access to all of the legacy NS/OS and UNIX codebase.
Terry