Let's say I defined a constant int in file A.java:

```
public final static int CONSTAN_VALUE_IN_A = 0;

```

when I use this value in another file B.java:

```
int fooBValue = A.CONSTAN_VALUE_IN_A;

```

after I compiled my project, in B.class,I have:

```
fooBValue = 0

```

I want to know if I can get where the value "0" come from (A.java) **when I only have B.class file without the source code.**
I heard that when compile with java8, I can know that B.java use some constant value in A.java by reading the constant pool in B.class.
But I'm not really sure about that or how to get the actual class the constant come from by reading the constant pool.