C#
Не вдупляю ООП, шо делать?
Еее
Там сложные слова. Но суть такая, что вся работа программы основана на взаимодействии объектов.
Можно создавать свои типы объектов, они называются классами. Класс — он как чертеж машины. А объекты — они как машины, сделанные по этому чертежу.
В классе определены свойства всех объектов этого класса, а также действия, которые с этим объектом можно совершать. Свойства еще иногда называются полями, а действия — методами. Поля хранят информацию об объектах, а методы описывают их поведение.
Когда класс объединяет в себе информацию и поведение, эту фишечку еще называют ИНКАПСУЛЯЦИЕЙ. Но есть умники, которые думают, будто инкапсуляция — это сокрытие особенностей поведения. То есть если у нас есть объект типа Гастарбайтер, то мы можем ему сказать, чтобы он забил гвоздь, и он забивает, как умеет (молотком, ботинком или лбом), а нас не волнуют подробности этого действия. Подробности от нас сокрыты, инкапсулированы внутри гастарбайтера (буквально заключены в него, как в капсулу).
Чтобы не писать тыщу раз одно и то же поведение, в ООП предусмотрено НАСЛЕДОВАНИЕ. То есть можно объявить какой-то класс с базовыми свойствами и базовым поведением, а затем на его основе объявлять дочерние классы с дополнительными свойствами и особым поведением. Например, у класса Животное определен цвет и вес, и оно умеет есть. А класс Кот — наследник класса Животное. Поэтому у кота автоматом тоже есть цвет и вес, и он тоже умеет есть (возможно, как-то по-своему). А еще он умеет ловить мышей, играть с клубочком и мурлыкать. А есть Пёс — тоже животное, тоже с цветом и весом. Но пёс не ловит мышей. Зато он умеет лаять и кусать воров.
Наконец, благодаря наследованию мы можем собрать кучу объектов разных типов и обращаться с ними единообразно. Например, мы можем собрать гастарбайтеров из Молдавии, Киргизии, Индии и Китая и сказать им, чтобы они все забивали гвозди. Молдаванин забивает молотком, киргиз — ладонью, индиец — лбом, китаец — лбом индийца. Каждый по-своему. Но мы не смотрим на эти различия. Команда одна — забить гвоздь. А способ ее выполнения определяется рабочими по-разному. Подобное многообразие поведения существует благодаря ПОЛИМОРФИЗМУ.
Вот такое ООП.
Можно создавать свои типы объектов, они называются классами. Класс — он как чертеж машины. А объекты — они как машины, сделанные по этому чертежу.
В классе определены свойства всех объектов этого класса, а также действия, которые с этим объектом можно совершать. Свойства еще иногда называются полями, а действия — методами. Поля хранят информацию об объектах, а методы описывают их поведение.
Когда класс объединяет в себе информацию и поведение, эту фишечку еще называют ИНКАПСУЛЯЦИЕЙ. Но есть умники, которые думают, будто инкапсуляция — это сокрытие особенностей поведения. То есть если у нас есть объект типа Гастарбайтер, то мы можем ему сказать, чтобы он забил гвоздь, и он забивает, как умеет (молотком, ботинком или лбом), а нас не волнуют подробности этого действия. Подробности от нас сокрыты, инкапсулированы внутри гастарбайтера (буквально заключены в него, как в капсулу).
Чтобы не писать тыщу раз одно и то же поведение, в ООП предусмотрено НАСЛЕДОВАНИЕ. То есть можно объявить какой-то класс с базовыми свойствами и базовым поведением, а затем на его основе объявлять дочерние классы с дополнительными свойствами и особым поведением. Например, у класса Животное определен цвет и вес, и оно умеет есть. А класс Кот — наследник класса Животное. Поэтому у кота автоматом тоже есть цвет и вес, и он тоже умеет есть (возможно, как-то по-своему). А еще он умеет ловить мышей, играть с клубочком и мурлыкать. А есть Пёс — тоже животное, тоже с цветом и весом. Но пёс не ловит мышей. Зато он умеет лаять и кусать воров.
Наконец, благодаря наследованию мы можем собрать кучу объектов разных типов и обращаться с ними единообразно. Например, мы можем собрать гастарбайтеров из Молдавии, Киргизии, Индии и Китая и сказать им, чтобы они все забивали гвозди. Молдаванин забивает молотком, киргиз — ладонью, индиец — лбом, китаец — лбом индийца. Каждый по-своему. Но мы не смотрим на эти различия. Команда одна — забить гвоздь. А способ ее выполнения определяется рабочими по-разному. Подобное многообразие поведения существует благодаря ПОЛИМОРФИЗМУ.
Вот такое ООП.
Anema Anema
Мужик прочитаю попозже, но признаю твой ответ лучшим за то что сток настрочил))
Не надо ничего вдуплять. Надо практиковаться.
Anema Anema
Эт как, ну я не знаю какой маломальский проект написать со своими знаниями)))
пробовать...
Перечитывать теорию до просветления. Попробовать найти другой источник знаний.
Похожие вопросы
- Что значит "ООП"
- Создание игры, нужны идеи или хотя бы стоит ли делать?
- А в vim можно делать что аналагичное winform?
- Проблема с установкой unity. Устанавливаю первый раз. Уже час бегает полоска, а загрузка не идет. Что делать?
- Что делать если туго даётся программирование ?
- Помогите, делаю игру 2д юнити!!!
- Пишет The name 'lastX' does not exist in the current context подскажите пжл что делать.ЮНИТИ
- Программисты, вы маги или что? Как вы это вообще делаете, пишите коды?
- Что я делаю не так?
- Я ухожу в сферу IT после 9,что делать?