Visualizzazione dei risultati da 1 a 6 su 6

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    327
    Quote Originariamente inviata da borras Visualizza il messaggio
    La cosa più semplice è usare la reflection (http://docs.oracle.com/javase/tutorial/reflect/):
    codice:
    Class clazz = Class.forName("packageA.ClassName");
    Grazie per la risposta, ma non riesco ad usarne i metodi, ho fatto così:

    Package1 contiene la classe Main

    Codice PHP:
    public static void main(String[] argsthrows ClassNotFoundExceptionNoSuchMethodException {
            Class 
    = Class.forName("Package2.NewClass"); 
    Package2 contiene NewClass che contiene il metodo metodo

    Codice PHP:
    package Package2;
    public class 
    NewClass {        public String metodo(){return "ciao";}} 
    Nel main tuttavia non riesco a invocare il metodo metodo
    Codice PHP:
    c.metodo(); 

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Quote Originariamente inviata da playbasfa Visualizza il messaggio
    Nel main tuttavia non riesco a invocare il metodo metodo
    Codice PHP:
    c.metodo(); 
    Questo perché metodo() non è un metodo di Class!

    Se vuoi eseguire metodo() devi istanziare un oggetto del tipo incapsulato nel Class (dovrebbe essere il metodo newInstance()) e ottenere un Method da invocare.

    Mi pare che tu abbia le idee un po' confuse... Ti consiglio di iniziare leggendoti il tutorial Oracle: http://docs.oracle.com/javase/tutori...nvocation.html
    Ultima modifica di Alex'87; 15-10-2013 a 15:04
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.