A few of the public read and write methods in FileInputStream and RandomAccessFile are declared native. This means that it is hard to instrument them using byte code instrumentation. Changing the public methods to be to non-native and instead calling private native methods simplifies instrumentation.
webrev: http://cr.openjdk.java.net/~sla/8033911/webrev.00/ bug: https://bugs.openjdk.java.net/browse/JDK-8033911 Thanks, /Staffan