package com.kuaishou.weapon.p0; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.Arrays; public class q3 { public static Field a(Object obj, String str) { for (Class<?> cls = obj.getClass(); cls != null; cls = cls.getSuperclass()) { try { Field declaredField = cls.getDeclaredField(str); if (!declaredField.isAccessible()) { declaredField.setAccessible(true); } return declaredField; } catch (Exception unused) { } } throw new NoSuchFieldException("Field " + str + " not found in " + obj.getClass()); } public static Method a(Object obj, String str, Class<?>... clsArr) { for (Class<?> cls = obj.getClass(); cls != null; cls = cls.getSuperclass()) { try { Method declaredMethod = cls.getDeclaredMethod(str, clsArr); if (!declaredMethod.isAccessible()) { declaredMethod.setAccessible(true); } return declaredMethod; } catch (NoSuchMethodException unused) { } } throw new NoSuchMethodException("Method " + str + " with parameters " + Arrays.asList(clsArr) + " not found in " + obj.getClass()); } public static Field b(Object obj, String str) { for (Class<?> cls = obj.getClass(); cls != null; cls = cls.getSuperclass()) { try { Field declaredField = cls.getDeclaredField(str); Field declaredField2 = Field.class.getDeclaredField("modifiers"); declaredField2.setAccessible(true); declaredField2.setInt(declaredField, declaredField.getModifiers() & -17); if (!declaredField.isAccessible()) { declaredField.setAccessible(true); } return declaredField; } catch (Exception unused) { } } throw new NoSuchFieldException("Field " + str + " not found in " + obj.getClass()); } }