помогите чайнику )

Тема в разделе "Java", создана пользователем yamahar1sp, 5 май 2007.

Статус темы:
Закрыта.
  1. yamahar1sp

    yamahar1sp Гость

    Подскажите:
    как можно определить что-то типо процедурного типа или классового метода(как в Delphi), который можно будет определять позже, но юзать сейчас, создавая при этом объекты данного класса?
    не используя интерфейсы (интерфейсные ссылки). :D
     
  2. 1r0n

    1r0n Гость

    я чтото не понял ;) Как ты собираешся использовать метод, если он не определён? Можно оставить пустым. Ну а потом можно просто перегрузить и всё. Примерно так.

    Код (Text):
    public class MyClass {

    public void method() {}

    }

    ...а потом...

    MyClass obj = new MyClass() {
    public void method()
    {
    //что тебе надо
    }
    };
     
  3. Siarhei Berdachuk

    Siarhei Berdachuk Гость

    Создаешь абстрактный класс с типовой реализацией методов или пустышками, а потом создаешь его наследников и переопределяешь методы если потребуется.
    Пример
    Код (Text):
    public abstract class A {

    public void myMethod() {
    // bla bla bla;
    }
    }

    public class B extends A {

    public void myMethod() {
    // bla bla bla;
    }
    }
     
  4. LuMee

    LuMee Well-Known Member

    Регистрация:
    2 май 2006
    Сообщения:
    477
    Симпатии:
    0
    Для: Siarhei Berdachuk
    Вместо пустышек лучше использовать абстрактные методы:
    Код (Text):
    public abstract class A {

    public abstract void myMethod();
    }

    public class B extends A {

    public void myMethod() {
    // bla bla bla;
    }
    }
    Для: yamahar1sp
    А чем интерфейсы не угодили? Они все же погибче будут.
     
  5. Siarhei Berdachuk

    Siarhei Berdachuk Гость

    Читаем внимательно первый пост. Там явно указано, что без интерфейсов.
    Мало ли зачем это человеку надо, может к собеседованию готовится ;)

    Кстати вполне возможно использовать и не определенные заранее методы.
    Мало ли какая архитектура программы. Мне доводилось писать код, который брал наименования
    классов, методов и параметров из БД например для выполнения некоторого действия.
    Потом динамически подгружаем класс, проверяем его методы проверяем наличие таких
    методов и выполняем.
    Этот подход позволяет строить гибко настраиваемые и масштабируемые системы.
    Но и гемора добавляется на порядок. Обязательно нужно все четко документировать в проекте
    так как через год сам не понимаешь что за что отвечает и как оно умудряется работать.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей