8Окт/120
[Java] Методы. Статические и нет. Вызов методов.
Итак, в предыдущей статье я написал пример реализации сортировки. Но написал я её в виде функции.
Теперь разберу как её использовать.
Из теории известно, что методы являются частью классов. Чтобы использовать метод без класса, его надо сделать статическим.
Пример с классом:
class Sort { void gnom_sort(int[] mas) { int p = 2; int i = 1; for (; i < mas.length; ) { if (mas[i - 1] <= mas[i]) { p++; i = p; } else { int a = mas[i]; mas[i] = mas[i - 1]; mas[i - 1] = a; i--; if (i == 0) { p++; i = p; } } } } } public class Hello { public static void main(String args[]) { int mas[] = {5, 5, 9, 8, 0, -5, 9, 10}; Sort s1 = new Sort(); s1.gnom_sort(mas); }
Пример со статической функцией:
class Sort { static void gnom_sort(int[] mas) { int p = 2; int i = 1; for (; i < mas.length; ) { if (mas[i - 1] <= mas[i]) { p++; i = p; } else { int a = mas[i]; mas[i] = mas[i - 1]; mas[i - 1] = a; i--; if (i == 0) { p++; i = p; } } } } } public class Hello { public static void main(String args[]) { int mas[] = {5, 5, 9, 8, 0, -5, 9, 10}; Sort.gnom_sort(mas); //Не нужно создавать объект }
Также, можно поместить функцию и внутрь основного класса и сделать её статической. Тогда можно вызывать её просто по имени:
public class Hello { static void gnom_sort(int[] mas) { int p = 2; int i = 1; for (; i < mas.length; ) { if (mas[i - 1] <= mas[i]) { p++; i = p; } else { int a = mas[i]; mas[i] = mas[i - 1]; mas[i - 1] = a; i--; if (i == 0) { p++; i = p; } } } } public static void main(String args[]) { int mas[] = {5, 5, 9, 8, 0, -5, 9, 10}; gnom_sort(mas); //Просто вызываем }
Комментарии (0)
Пинги (0)
(подписаться на новые комментарии в этой ветке)
Нет обратных ссылок на эту запись.
Leave a comment