| // Copyright (c) 2017, the R8 project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| package getmembers; |
| |
| import java.lang.reflect.Field; |
| import java.lang.reflect.Method; |
| |
| public class Main { |
| public static void main(String[] args) throws Exception { |
| Class a = A.class; |
| Field foo = a.getDeclaredField("foo"); |
| assert foo != null; |
| assert foo.get(null).equals("foo"); |
| System.out.println(foo.get(null)); |
| |
| Method bar = a.getDeclaredMethod("bar", new Class[] { String.class }); |
| assert bar != null; |
| A instanceA = new A(); |
| String barResult = (String) bar.invoke(instanceA, "bar"); |
| assert barResult.startsWith("foo"); |
| System.out.println(barResult); |
| |
| String bazResult = B.inliner(); |
| assert bazResult.startsWith("foo"); |
| System.out.println(bazResult); |
| } |
| } |