Запитання з тегом «oop»

Об'єктно-орієнтоване програмування - це парадигма програмування, що використовує "об'єкти": структури даних, що складаються з полів даних та методів разом з їх взаємодіями.


25
Чому C # не дозволяє статичним методам реалізувати інтерфейс?
Чому C # був розроблений таким чином? Як я розумію, інтерфейс лише описує поведінку і служить меті опису договірного зобов'язання для класів, що реалізують інтерфейс, що реалізується певна поведінка. Якщо класи хочуть реалізувати таку поведінку у спільному методі, чому б їм не зробити це? Ось приклад того, що я маю …

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

30
Які відмінності між структурою та класом у C ++?
Це питання вже задавались у контексті мережі C # / . Тепер я хотів би дізнатися про відмінності між структурою та класом в C ++. Будь ласка, обговоріть технічні відмінності, а також причини вибору того чи іншого дизайну ОО. Почну з очевидної різниці: Якщо ви не вказуєте public:або private:, члени …
441 c++  oop  class  struct  c++-faq 

15
Чи слід @Override впровадження методу інтерфейсу?
Чи слід анотувати метод, що реалізує метод інтерфейсу @Override? Javadoc в Overrideанотації сказано: Вказує на те, що оголошення методу призначене для заміщення оголошення методу в надкласовому класі. Якщо метод анотований цим типом анотацій, але не замінює метод надкласового класу, компілятори потрібні для створення повідомлення про помилку. Я не думаю, що …

22
Коли використовувати інтерфейс замість абстрактного класу і навпаки?
Це може бути загальне питання про ООП. Я хотів зробити загальне порівняння між інтерфейсом та абстрактним класом на основі їх використання. Коли хотілося б використовувати інтерфейс і коли потрібно використовувати абстрактний клас ?



6
Пояснення '__enter__' та '__exit__' Python
Я бачив це в чиєсь коді. Що це означає? 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
Коли слід використовувати "friend" в C ++?
Я читав відповіді на C ++ і мені було цікаво friendдекларацію. Я особисто ніколи його не використовував, проте мені цікаво вивчити мову. Який хороший приклад використання friend? Читання питань FAQ трохи довше мені подобається ідея << >>перевантаження оператора та додавання їх як друга цих класів. Однак я не впевнений, як …
354 c++  oop  encapsulation  friend 


21
Поліморфізм проти перекриття проти перевантаження
Що стосується Java, коли хтось запитує: що таке поліморфізм? Чи буде перевантаження чи переосмислення прийнятною відповіддю? Я думаю, що в цьому є трохи більше. ЯКЩО у вас був абстрактний базовий клас, який визначав метод без реалізації, і ви визначили цей метод у підкласі, це все-таки перевищує? Я думаю, що перевантаження …

8
Використання aloc init замість нового
Навчаючись 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.