S'yi başka bir sınıfa döndürmek için XML ve yansıma kullanan Object
bir sınıfım var.
Normalde bu nesneler harici bir nesnenin alt alanlarıdır, ancak bazen anında oluşturmak istediğim bir şeydir. Böyle bir şey denedim ama işe yaramadı. Bunun nedeni, Java'nın private
yansıtma yöntemlerine erişmenize izin vermemesidir .
Element node = outerNode.item(0);
String methodName = node.getAttribute("method");
String objectName = node.getAttribute("object");
if ("SomeObject".equals(objectName))
object = someObject;
else
object = this;
method = object.getClass().getMethod(methodName, (Class[]) null);
Sağlanan yöntem ise private
, bir NoSuchMethodException
. Metodu public
yaparak veya onu türetmek için başka bir sınıf yaparak çözebilirim .
Uzun lafın kısası, private
düşünme yoluyla bir yönteme erişmenin bir yolu olup olmadığını merak ediyordum .