There are currently two cases that are hard to distinguish:
a) There are no lines/branches to cover, e.g. a interface class without any statics and default methods, this should be shown as "100% covered" as there is nothing more that can be covered
b) There are lines/branches to cover, but no coverage was reported at all for the class. In this case it should be shown as "0%" covered
Unfortunately it seems both cases currently look exactly the same when the jacoco-plugin see coverage-results, at least I could not find a way to distinguish between those two cases.
If anybody has an idea how this can be done technically, it should be possible to fix this, otherwise we would be playing change-ping-pong if we just change the current code to show 0% as then other cases are again reported incorrectly.
Code-location for the actual computation is at hudson/plugins/jacoco/model/Coverage.java:80