I prefer to think in ticks, which basically is a simplified way to measure time. It's less accurate then taking the actual time itself, but makes game states easier predictable and reproducable IMHO. You can find a simple example in the source code for the advanced example. Or have a look at Robombs' source code that contains a more complex Ticker class.
If you want to use elapsed time between frames instead, just measure it using whatever seems to be appropriate...System.currentTimeMillis() or System.nanotime() or whatever.
One thing to keep in mind is that some operations that are based on elapsed time increase in runtime for higher times. Collision detection is a good example of this. If you increase the movement vector based on time elapsed since the last frame to get equals movement speeds, collision detection will take longer resulting in even more elapsed time until the next call, which results in even slower collision detection and so on. It's a good idea to introduce an upper bound to the time taken. If a system is so slow that this is reached, the game itself will slow down (not just the frame rate), which isn't nice but it's better than bringing the whole thing to a complete halt.