Unmodifiable list in java can be created as:

```
List<String> unModifiableStringList = Collections.unmodifiableList(myActualModifiableList);

```

This is fine, but what is the actual runtime type of the list returned by the above function? How can we access that class? Is it even possible?

**UPDATE:** Actually I need to know at compile time that an unmodifiable list is being modified, Since I have to deal with a lot of lists, some of which are modifiable and others are not. So it is very cumbersome to keep track?