В чем отличие метода и функции?
Логически:
метод — это присуще объекту. вызывается только для объекта. может работать с внутренними полями объекта.
функция — вещь в себе вызывается откуда угодно и для чего угодно.
Реально:
метод — такая же функция, одним из входных значений которой является объект, для которого вызван метод.
Остальные ответы
Метод, методология это КАК вы что-то собираетесь делать.
Функция, функциональность это ЧЕМ вы это собираетесь делать. Какие функциональные особенности у предмета.
Топорное изьяснение).
fd fdУченик (137) 3 года назад
типичный ответ гуманитария) сказать ни о чем но сделать вид будто чтото сказал
fd fdУченик (137) 3 года назад
человек же про программирование спрашивает
функция возвращает результат,
метод — свойство объекта, функция может быть методом объекта
объекты и методы удобны для инкапсуляции, что позволяет не загрязнять пространство имен
Python-сообщество
![]()
- Начало
- » Python для новичков
- » Python — разница между функцией и методом
#1 Май 3, 2014 10:17:24
setevoy От: Kiev, UA Зарегистрирован: 2013-02-22 Сообщения: 10 Репутация: 0 Профиль Отправить e-mail
Python — разница между функцией и методом

Сразу извиняюсь за столь нубский вопрос — просто до классов ещё не дошёл, а вопрос гложет
К примеру, для списков (list) есть и функции (пример — len(list)), и методы (пример — list.append(obj)) — в чём между ними разница?
> Help on built-in function len in module __builtin__: // т.е. он таки функция (модуля?);
> Help on method_descriptor in list: // т.е. это таки метод (класса?);
Именно между понятием и действиями — функции и метода?
#2 Май 3, 2014 10:20:00
FishHook От: Зарегистрирован: 2011-01-08 Сообщения: 8312 Репутация: 568 Профиль Отправить e-mail
Python — разница между функцией и методом
Методы — это функции, являющиеся атрибутами классов. Любой метод — функция, но не каждая функция — метод. Никакой принципиальной разницы между ними в питоне нет, это просто такая терминология.
Отредактировано FishHook (Май 3, 2014 10:23:02)
Функция против метода: разница и сравнение
В эпоху технологий и компьютеров важную роль играет язык программирования. Язык программирования — это способ, с помощью которого мы можем общаться с программным обеспечением на компьютере. Компьютер понимает только язык машинного уровня. Основой языка программирования являются функции и методы.
Основные выводы
- Функция — это блок кода, выполняющий определенную задачу, тогда как метод — это функция, связанная с объектом или классом.
- Функции возвращают значение по умолчанию, тогда как метод может возвращать значение или нет, в зависимости от его реализации.
- Функции не связаны с конкретным объектом или классом, тогда как методы всегда связаны с объектом или классом.
Функция против метода
Разница между функцией и методом заключается в том, что функция свободна от какого-либо объекта, тогда как сам метод является статическим или находится на объекте. В языке C нет методов, в нем есть только функции, тогда как в C++ и JAVA нет функций, а есть только методы. Объектно-ориентированное слово для метода — функция.

Функция — это фрагмент кода с именем, который может передавать и, при необходимости, возвращать данные для работы. Другими словами, работа функции на любом языке программирования заключается в предоставлении результата в обмен на заданные данные (параметры). Функцию можно использовать несколько раз. Функция также может быть вызвана из любой другой функции.
Хотя этот метод известен как ООП (объектно-ориентированный язык программирования), потому что объект включает в себя данные и поведение, а это включает в себя интерфейс. Таким образом можно определить, можно ли использовать объект или нет. Например, «окно» — это объект, состоящий из методов «открыть» и «закрыть», имеющих некоторые данные и поведение.
Сравнительная таблица
Что такое функция?
Функции представляют собой группу инструкций, объединенных вместе для достижения определенного результата. Функция может повысить возможность повторного использования определенного кода. Любые значения могут быть переданы через переменные в функцию. Переменные делятся на две категории — аргументы и параметры.
В JAVA мы начинаем программирование с класса, за которым следует следующая строка с указанием «public static void main ()». «public» обозначает спецификатор доступа и используется для управления тем, какая часть содержимого должна быть доступна.
Существуют определенные правила, которым необходимо следовать при определении функции в таких языках программирования, как JAVA и C++. Например, в JAVA правила определения функции заключаются в том, что нельзя объявлять несколько функций, имеющих одну и ту же сигнатуру, т. е. функции, имеющие одинаковые параметры и номера, не могут повторяться. Пример функции в JAVA приведен ниже для справки: Int findMinimum (int num1, int num2, int num3) < If (num1 >num2) return num1; < elseif (число3 >число1) вернуть число3; иначе вернуть число1; > > В языке программирования C функции бывают двух типов: предопределенные и определяемые пользователем функции.
Такие функции, как puts(), gets(), printf(), scanf() и т. д., предопределены. библиотека функции. Например, – функция printf() описана в заголовочный файл поэтому, чтобы использовать функцию printf(), заголовочный файл должен быть включен в программу с помощью #include .
Функции, созданные пользователем в программе, называются пользовательскими функциями. Синтаксис определяемой пользователем функции: return_type имя_функции (список аргументов) . Тип возвращаемого значения может быть таким, как char, int, void и т. д. Список аргументов предназначен для сравнения двух данных возвращаемого типа. Блок кода — это группа операторов программирования на языке C, которые будут выполняться всякий раз, когда во время выполнения выполняется вызов функции.
Что такое Метод?
Методы определены как объектно-ориентированные языки программирования. Методы также делятся на три типа: метод интерфейса, метод конструктора и метод реализации.
В программировании метод записывается как; String getMyName() < return «Давина Клэр»; >В приведенном выше примере метода getMyName() является сигнатурой метода. < вернуть «Давина Клэр»; >— тело метода. Строка является возвращаемым типом и возвращает «Davina Claire»; является оператором возврата.
Полная программа будет; эхо $альт -> цвет; // черное эхо» ”; эхо $swiftDzire -> цвет; // черное эхо» ”; // Установить значения $alto -> color = ‘red’; $alto -> comp = «ALTO»; $swiftDzire -> comp = «SWIFTDZIRE»; // Снова получаем значения echo $alto -> color; // красное эхо » ”; эхо $swiftDzire -> цвет; // черное эхо» ”; эхо $ альт -> комп; // АЛЬТНОЕ эхо » ”; эхо $swiftDzire -> комп; // СВИФТДЗИРЭ эхо » ”; // Используйте методы для получения звукового эха $alto -> hello(); // звуковое эхо » ”; эхо $swiftDzire -> привет(); // звуковой сигнал
Основное различие между функцией и методом
- Функция вызывается непосредственно по ее имени, тогда как метод включает в себя код, который вызывается по имени объекта.
- Функция может передавать, а затем возвращать обрабатываемые данные, в то время как метод обрабатывает данные в классе.
- Функция независима, а метод — это функция, связанная с объектом.
- Явные данные передаются функции, тогда как метод полностью передает объект, для которого он был вызван в программе.
- Метод — это объектно-ориентированное программирование, а функция имеет автономную функциональность.
Рекомендации
- https://www.sciencedirect.com/science/article/pii/S0096300309010376
- https://www.sciencedirect.com/science/article/pii/S0960077905004054
Один запрос?
Я приложил столько усилий, чтобы написать этот пост в блоге, чтобы предоставить вам ценность. Это будет очень полезно для меня, если вы подумаете о том, чтобы поделиться им в социальных сетях или со своими друзьями/родными. ДЕЛИТЬСЯ ♥️
Сандип Бхандари имеет степень бакалавра вычислительной техники Университета Тапар (2006 г.). Имеет 20-летний опыт работы в сфере технологий. Он проявляет большой интерес к различным техническим областям, включая системы баз данных, компьютерные сети и программирование. Подробнее о нем можно прочитать на его био страница.
Функция и Методы в Java
Добрый день скажите Как создаётся функция в java дайте пару наглядных примеров, и какая разница между функцией и Методом, заранее спасибо.
Комментарии (7)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
21 ноября 2020, 21:11
Скажите А конструктор и Метод ? вчеём разница, в возврате згачения?? Метод возвращает а Конструктор нет ?? Зарание спасибо.
Justinian Judge в Mega City One Master
21 ноября 2020, 21:17
Конструктор это специальный метод с рядом требований: — нету явно указанного типа возвращаемого значения, грубо говоря — конструктор ничего не возвращает, в отличие от методов — которые должны явно указать возвращаемый тип, либо void если ничего не возвращает — имя конструктора должно совпадать с именем класса, учитывая регистр — конструктор отрабатывает при создании экземпляра класса пример конструктора:
class Cat public Cat(String name) ... > >
здесь мы видим конструктор — нету типа возвращаемого значения , имя конструктора совпадает с именем класса.
Cat cat = new Cat("Vaska");
при создании экземпляра мы указываем аргумент «Васька» который и попадет в конструктор при создании экземпляра. Метод может быть вызван бесконечное количество раз. Конструктор отработает для конкретного экземпляра только один единственный раз — при создании экземпляра объекта
Justinian Judge в Mega City One Master
21 ноября 2020, 20:49
Функция это общекомпьютерный термин, обозначающий подпрограмму, структурно обособленный небольшой кусок кода. В джаве функции называются методами. В каких-то языках программирования это функции, в каких-то называют методы. В джаве это методы. Что можно почитать на тему.. — https://javarush.com/groups/posts/2757-chto-takoe-metodih-v-java — https://javarush.com/groups/posts/1950-metodih-ikh-parametrih-vzaimodeystvie-i-peregruzka — https://javarush.com/groups/posts/1381-metodih-v-java Почитай, будут вопросы — задавай.
Wladyslaw Java Developer Master
22 ноября 2020, 09:00
Оно все в джаве, вроде как, методы — потому что в классе, но с другой стороны, например, всякие утильные статические методы в классах, внутри которых ничего другого нет, никакого состояния, которые работают исключительно со своими аргументами — получается, вроде как функция. Потому что, по сути, независима, ни на что не завязнна. Хотя, ярые ООП-пуристы скажут что таких классов быть не должно в принципе.
Justinian Judge в Mega City One Master
22 ноября 2020, 10:06
Не вроде 🙂 Есть синтаксис языка, есть JLS. На уровне синтаксиса, с которым мы работаем, подпрограммы в джаве называются методами. Это чисто название — процедуры в паскале, функции в С, методы в джаве. Нужно очень четко расграничивать, где мы говорим о языке как синтаксисе и конкретно о джаве. И где мы выходим на другой уровень абстракции, где называем классы — программами , методы — функциями, и рассуждаем в общекомпьютерной плоскости, что такое функции, что такое чистые функцие и тд. Я часто встречаю, как те у кого бекграунд на других языках,, то методами называют, т о функциями, странно, почему не процедурами 🙂 Это не является корректным в принципе. В каждом языке свои правила, и взаимозаменяемое использование терминов может путать и других и себя. Ну назвали класс классом, метод методом, пусть так и будет. Смешивать различные уровни абстракции не является корректным занятием с точки зрения формальной логики. Оно может и допустимо иногда но в ограниченном количестве случаев. п.с. кстати, конструкторы это по сути методы, точно так же, как методы — функции. Но опять же, если все начнут на конструкторы методы говорить ) поправил метод, вызвал метод, опять же, по сути это верно. Но путаницу вызвать может. Я вот об этом аспекте имею ввиду
Wladyslaw Java Developer Master
22 ноября 2020, 10:16
да, с точки зрения именно джавы — все они методы, безусловно. Я сам никогда слово функция в контексте джавы не использую, так рассуждаю просто 🙂
Justinian Judge в Mega City One Master
22 ноября 2020, 10:32
quod licet jovi или как там )) Я исходил из того, что на начальном этапе нужно четко разграничить терминологию, чтобы не путаться. Поэтому тебе можно 🙂 Тем кто только начал изучать, нет 🙂 Они должны фокусироваться на главном, и так слишком всего много на них наваливается, глаза разбегаются, важно дать/найти какую-то стабильность, островки понимания, и постепенно расширять плацдарм. А тут только копни, методы, функции, чистые функции, виртуальные функции и тд ))
- Курсы программирования
- Регистрация
- Курс Java
- Помощь по задачам
- Цены
- Задачи-игры
Сообщество
JavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.