[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/pathcl/example-code/master/09-pythonic-obj/private/Expose.java [Back]  [Original]

import java.lang.reflect.Field;

public class Expose {

    public static void main(String[] args) {
        Confidential message = new Confidential("top secret text");
        Field secretField = null;
        try {
            secretField = Confidential.class.getDeclaredField("secret");
        }
        catch (NoSuchFieldException e) {
            System.err.println(e);
            System.exit(1);
        }
        secretField.setAccessible(true); // break the lock!
        try {
            String wasHidden = (String) secretField.get(message);
            System.out.println("message.secret = " + wasHidden);
        }
        catch (IllegalAccessException e) { 
            // this will not happen after setAcessible(true)
            System.err.println(e);
        }   
    }
}

Web Proxy Viewer  |  New URL  |  Original Page