Вопросы с тегом «oop»

Объектно-ориентированное программирование - это парадигма программирования, использующая «объекты»: структуры данных, состоящие из полей данных и методов вместе с их взаимодействиями.

18
В чем разница между методами класса и экземпляра?
В чем разница между методом класса и методом экземпляра? Являются ли методы экземпляра средствами доступа (геттерами и сеттерами), в то время как методы класса являются почти всем остальным?

25
Почему C # не позволяет статическим методам реализовывать интерфейс?
Почему C # был разработан таким образом? Насколько я понимаю, интерфейс только описывает поведение и служит для описания договорных обязательств для классов, реализующих интерфейс, в котором реализовано определенное поведение. Если классы хотят реализовать это поведение в общем методе, почему бы и нет? Вот пример того, что я имею в виду: …

21
Что делает ключевое слово static в классе?
Чтобы быть конкретным, я пытался этот код: package hello; public class Hello { Clock clock = new Clock(); public static void main(String args[]) { clock.sayTime(); } } Но это дало ошибку Невозможно получить доступ к нестатическому полю в статическом методе main Поэтому я изменил декларацию clockна это: static Clock clock …

30
Каковы различия между структурой и классом в C ++?
Этот вопрос уже задавался в контексте C # /. Net . Теперь я хотел бы изучить различия между структурой и классом в C ++. Пожалуйста, обсудите технические различия, а также причины выбора того или иного в дизайне ОО. Начну с очевидной разницы: Если вы не укажете public:или private:, члены структуры …
441 c++  oop  class  struct  c++-faq 

15
Должны ли мы @Override реализации метода интерфейса?
Следует ли аннотировать метод, реализующий интерфейсный метод @Override? Javadoc в Overrideаннотации говорится: Указывает, что объявление метода предназначено для переопределения объявления метода в суперклассе. Если метод аннотирован этим типом аннотации, но не переопределяет метод суперкласса, компиляторы должны генерировать сообщение об ошибке. Я не думаю, что интерфейс технически суперкласс. Или это? Question …

22
Когда использовать интерфейс вместо абстрактного класса и наоборот?
Это может быть общий вопрос ООП. Я хотел сделать общее сравнение между интерфейсом и абстрактным классом на основе их использования. Когда нужно использовать интерфейс, а когда - абстрактный класс ?



6
Объяснение Python '__enter__' и '__exit__'
Я видел это в чьем-то коде. Что это значит? def __enter__(self): return self def __exit__(self, type, value, tb): self.stream.close() from __future__ import with_statement#for python2.5 class a(object): def __enter__(self): print 'sss' return 'sss111' def __exit__(self ,type, value, traceback): print 'ok' return False with a() as s: print s print s

30
Когда вы должны использовать «друг» в C ++?
Я читал часто задаваемые вопросы по C ++ и мне было интересно узнать об этом friendобъявлении. Лично я никогда не использовал это, однако я заинтересован в изучении языка. Что является хорошим примером использования friend? Немного дольше читая FAQ, мне нравится идея << >>перегрузки и добавления операторов в друзья этих классов. …
354 c++  oop  encapsulation  friend 


21
Полиморфизм против переопределения против перегрузки
С точки зрения Java, когда кто-то спрашивает: что такое полиморфизм? Будет ли перегрузка или перегрузка приемлемым ответом? Я думаю, что это немного больше, чем это. Если у вас есть абстрактный базовый класс, который определил метод без реализации, и вы определили этот метод в подклассе, это все еще переопределяет? Я думаю, …

8
Использование alloc init вместо new
Изучая Objective-C и читая пример кода, я замечаю, что объекты обычно создаются с помощью этого метода: SomeObject *myObject = [[SomeObject alloc] init]; вместо того: SomeObject *myObject = [SomeObject new]; Есть ли причина для этого, поскольку я прочитал, что они эквивалентны?
344 objective-c  oop 



Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.