Архив категории ‘Java’

Получить имя пакета класса

1MyClass.class.getPackage().getName() 1

Получение всех методов класса и их выполнение

1234567Class c = person.getClass(); Method[] methods = c.getDeclaredMethods(); //Получаем массив объявленных методов класса person try {     methods[0].invoke(person, null); //Выполняем первый попавшийся метод } catch (IllegalAccessException | InvocationTargetException e) {     e.printStackTrace(); } Более подробно расписано здесь (http://java-online.ru/java-reflection.xhtml). Вызов метода с параметрами: 12345Class aclass = obj.getClass(); Class[] paramTypes = new Class[] { String.class, […]

Создание объекта класса по его имени

В общем виде это выглядет так (http://java-online.ru/java-reflection.xhtml): 123Class aclass = Class.forName("Test"); Object obj = aclass.newInstance(); Test test = (Test) obj; Пример: файл Person.java с объявлением интерфейса, в котором содержатся классы: 123456789package com.javarush.task.task14.task1411; public interface Person {     class User implements Person {         void foo() { System.out.println("Something"); }     } […]

Материалы по рефлексии

http://java-online.ru/java-reflection.xhtml

Несколько типов исключений в одном блоке Catch

123456try{    ///Something } catch (Exception | NoClassDefFoundError e){    System.out.println(e); } Здесь в одном блоке Catch мы отлавливаем исключения двух типов. Замечу, что NoClassDefFoundError не является наследником класса Exception.

Изменение регистра. Сделать первую букву строки заглавной.

1234public static String firstUpperCase(String string){         if (string == null || string.isEmpty()) return "";         return string.substring(0, 1).toUpperCase() + string.substring(1).toLowerCase();     }