I have been looking at platform games. One of the things that I noticed is that Physics are being used more and more. Java on itself does not have build in physics but there are ways to add it into it. Javagaming.org has a couple of links to sites that have physics for java.
One of the best Platformers that I have seen is Super mario bros for the wii. The game footage that I seen shows a lot of things that happen. You can pick up players and things in the game. You can fly. There are a lot of map parts moving around. There are also tracks in the game that the players can move on. I have never programmed map collision beyond the regular square tile shapes. I think I will try to do somekind of area collision with java so that moving and non square collision will work.