2010-06-05 5 views
5

Возможно ли создать новый java-файл из существующего java-файла после изменения некоторых его атрибутов во время выполнения?Как создать динамический класс во время выполнения в Java

Предположим, у меня есть Java файл

pubic class Student{ 

    private int rollNo; 
    private String name; 
    // getters and setters 
    // constructor 
} 

возможно создать что-то вроде этого, при условии, что rollNo является ключевым элементом для таблицы ..

public class Student { 
    private StudentKey key; 
    private String name; 
    //getters and setters 
    //constructor 
} 
public class StudentKey { 
    private int rollNo; 
    // getters and setters 
    // construcotors 
} 

пожалуйста, помогите ..

+0

Подсказка: ответить на ур Q? Прежде всего, подумайте так, как можно создать класс во время выполнения. потому что каждый класс должен быть загружен, скомпилирован и затем запущен. Можете ли это использовать только во время выполнения? –

+0

@javauser: вы можете сделать это во время выполнения с помощью Java Compiler API (см. [Этот предыдущий ответ] (http://stackoverflow.com/questions/2130039/javacompiler-from-jdk-1-6-how-to-write -класс-байты-непосредственно в байтах-массив/2130290 # 2130290)). Это не применяется здесь (по крайней мере, не только), потому что OP хочет изменить уже скомпилированный/загруженный тип. Но строго ответить на ваш вопрос, это возможно. –

+1

@javauser: сделайте только соответствующие комментарии. Спасибо, спасибо. В дополнение к этому, «eleet speak», как и ваш «Ответ на ur Q?» *, Нахмурился на SO. Пожалуйста, воздержитесь от этого. – NoozNooz42

ответ

Смежные вопросы