Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.lang.reflect.Constructor;
- import java.lang.reflect.Method;
- import java.util.ArrayList;
- import java.util.List;
- public class Test {
- public static void main(String[] args) {
- Class<?> clazz;
- try {
- clazz = Class.forName("TextString");
- Constructor<?> ctor = clazz.getConstructor();
- Element object = (Element) ctor.newInstance();
- Method meth = clazz.getMethod("insert", new Class<?>[] {String.class, ArrayList.class});
- meth.invoke(object, "canvas", new ArrayList<Element>());
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
- abstract class Element {
- public String name;
- public String description;
- public String canvas;
- public ArrayList<Element> objects;
- void remove(){
- }
- void toggle(){
- }
- void setBounds(int x, int y, int w, int h){
- }
- public abstract void insert(String canvas, ArrayList<Element> objects);
- }
- class TextString extends Element {
- public TextString() {
- super();
- this.name = "Text String";
- this.description = "A literal readable string of text.";
- }
- @Override
- public void insert(String canvas, ArrayList<Element> objects) {
- this.canvas = canvas;
- this.objects = objects;
- System.out.println("Text string created.");
- }
- }
Add Comment
Please, Sign In to add comment