public class a(){
   private a(){
      System.out.println("私有函数");
   }
}public class b(){
   如何调用a类的私有函数?
}

解决方案 »

  1.   

    使用反射机制。 Class<A> clz = A.class; try { Constructor<A> constructor = clz.getDeclaredConstructor(null); constructor.setAccessible(true); A a = constructor.newInstance(null); } catch (SecurityException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (NoSuchMethodException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalArgumentException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (InstantiationException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalAccessException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (InvocationTargetException e) { // TODO Auto-generated catch block e.printStackTrace(); }
      

  2.   

    私有的都能调用,那还要私有化干嘛,直接写public就行了