There are almost always fish somewhere in the headwaters, but often not worth fishing. As mentioned, however, it is often worth it to work further up stream and look for better habitat.
I can think of two streams that I found fish in that surprised me in the extreme headwaters. One was a small, "wild" trout stream that fed into another, that fed another, that fed a river. The access point was above even the "head waters" on a map, so I walked in. I always walk along the water and look for pools and watch for fish to start. As I aproached a section of water probably 8" wide and a few inches deep, there was a small pool below a rock (think a bathroom sink) and lo and behold a brook trout. Saw one more fish over the next 1/4 mile or so. until the water started to look more like your typical smallest stream you'd find fish.
the other was a stream that was formerly on the wild trout list, removed, and slated for consideration (it ultimately was NOT added back).
It was all dried up where we first accessed it, with 10-12 brook trout in large pools where the stream crossed a rural road through pipes. We drove up an old logging/gamelands road for several miles and came to near where the stream originated from a blue gil pond. There was hardly a trickle of water running, and we fished about 1/4 mile with no fish. Decided to walk to the pond and nearly to it, the stream had a very small widening and had a spot about 18 inches long, 1' wide, and 8" deep with a rock at the bottom. I dropped my fly in and out swam a ~7-8 inch brookie. Not just a dink, but a decent sized fish. I missed the strike, and actually had him hit 2 more times and lost him on the flop. Didn't see a single other fish, and the pond the water flowed out of held only frogs and blue gil.
Moral of my ramblings: There will be fish in the most remote headwaters if water quality, temperature, and food are there. But they will be few.