Лучшее руководство по метод Java в 2024 году. В этом руководстве вы можете изучить Определенные методы,Метод Призвание,Ключевое слово недействительным,Передача параметров по значению,Перегруженные методы,Переменная Объем,Используя параметры командной строки,конструктор,Переменный параметр,завершить метод (),
В первых нескольких главах мы часто используем для System.out.println (), то что это?
Println () представляет собой метод (метод), и система является системный класс (класс), из является стандартным выходным сигналом объекта (Object). Использование этого оператора является вызов системный класс системы стандартного вывода объекта из метода Println ().
Метод Java это набор утверждений, которые вместе выполняют функцию.
В общем случае, определение последовательности операций способа, содержащий следующий синтаксис:
修饰符 返回值类型 方法名 (参数类型 参数名){ ru. 方法体 ru. return 返回值; }
Способ включает в себя заголовок метода и тело метода. Вот все это часть процесса:
Такие, как:
public static int age(int birthday){ru.}
Вы можете иметь более одного параметра:
static float interest(float principal, int year){ru.}
Примечание: В некоторых других языках метод относится к процессу и функций. Непустое тип возвращаемого значения возвращаемого значения вызываемого метода функции; метод возвращает возвращаемое значение типа недействительным называется процессом.
Следующий метод содержит два параметра num1 и num2, он возвращает максимальное значение этих двух параметров.
/** 返回两个整型变量数据的较大值 */ public static int max(int num1, int num2) { int result; if (num1 > num2) result = num1; else result = num2; return result; }
Java поддерживает два способа вызова метода, согласно ли метод возвращаемого значения для выбора.
Когда программа вызывает метод, программа для управления метод называется. Когда оператор возврата вызываемый метод исполняется файл или до тела метода, когда закрытие возвращает управление скобка к программе.
Когда метод возвращает значение, то вызов метода, как правило, рассматривается как значение. Например:
int larger = max(30, 40);
Если метод возвращает значение является недействительным, вызов метода должен быть заявление. Например, метод Println возвращает недействительным. Следующий вызов является утверждение:
System.out.println("Welcome to Java!");
В следующем примере показано, как определить метод, и как назвать его:
public class TestMax { /** 主方法 */ public static void main(String[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println("The maximum between " + i + " and " + j + " is " + k); } /** 返回两个整数变量较大的值 */ public static int max(int num1, int num2) { int result; if (num1 > num2) result = num1; else result = num2; return result; } }
Приведенные выше примеры скомпилированные получены следующие результаты:
The maximum between 5 and 2 is 5
Эта программа содержит основной метод и метод макс. Основной метод вызывается JVM, кроме того, основной и другими методами нет разницы.
Head Основной метод такой же, как на примере, показанном, с модификаторами общественных и статических, значение пустого типа возвращаемого значения, имя метода является основным, в дополнение с о Струнные параметров типа []. String [], что аргумент является массивом строк.
В этом разделе описывается, как объявить и вызова метода недействительным.
В следующем примере объявляется метод с именем printGrade, и назвать его напечатать данную оценку.
public class TestVoidMethod { public static void main(String[] args) { printGrade(78.5); } public static void printGrade(double score) { if (score >= 90.0) { System.out.println('A'); } else if (score >= 80.0) { System.out.println('B'); } else if (score >= 70.0) { System.out.println('C'); } else if (score >= 60.0) { System.out.println('D'); } else { System.out.println('F'); } } }
Приведенные выше примеры скомпилированные получены следующие результаты:
C
Здесь printGrade метод является метод типа пустоты, он не возвращает значение.
Способ вызова недействительным должен быть заявление. Поэтому основным методом третьей линии вызывает в форме заявления. Как и любое заявление заканчивается точкой с запятой, как.
Вызвать метод, когда вам необходимо предоставить параметры, вы должны предоставить список параметров в соответствии с порядком, указанным.
Например, следующий метод непрерывного п раз печатает сообщение:
public static void nPrintln(String message, int n) { for (int i = 0; i < n; i++) System.out.println(message); }
Следующий пример иллюстрирует эффект передается по значению.
Программа создает метод, который используется для обмена двух переменных.
public class TestPassByValue { public static void main(String[] args) { int num1 = 1; int num2 = 2; System.out.println("Before swap method, num1 is " + num1 + " and num2 is " + num2); // 调用swap方法 swap(num1, num2); System.out.println("After swap method, num1 is " + num1 + " and num2 is " + num2); } /** 交换两个变量的方法 */ public static void swap(int n1, int n2) { System.out.println("\tInside the swap method"); System.out.println("\t\tBefore swapping n1 is " + n1 + " n2 is " + n2); // 交换 n1 与 n2的值 int temp = n1; n1 = n2; n2 = temp; System.out.println("\t\tAfter swapping n1 is " + n1 + " n2 is " + n2); } }
Приведенные выше примеры скомпилированные получены следующие результаты:
Before swap method, num1 is 1 and num2 is 2 Inside the swap method Before swapping n1 is 1 n2 is 2 After swapping n1 is 2 n2 is 1 After swap method, num1 is 1 and num2 is 2
Проходят два параметра для вызова метода подкачки. Интересно отметить, что после того, как метод вызывается, значение аргумента не изменилась.
макс метод использует вышесказанное относится только к типу данных Int. Но если вы хотите, чтобы получить максимальное значение двух с плавающей точкой тип данных это?
Решение состоит в том, чтобы создать еще один параметр с тем же именем, но другим способом, как показано в следующем коде:
public static double max(double num1, double num2) { if (num1 > num2) return num1; else return num2; }
При вызове макс метод передается параметр Int, макс метод Int аргумента вызывается;
Если он будет принят двойной параметр типа, тип метода двойного опыта макс называется, это называется метод перегрузки;
То, что два метода класса имеют одинаковые имена, но с другим списком параметров.
Java компилятор в соответствии с методом подписи, чтобы определить, какой метод должен быть вызван.
Перегрузка методов может сделать программу более разборчивыми. Способ исполнения тесно связанные с ними задачи должны использовать то же имя.
Перегруженные методы должны иметь различный список параметров. Вы не можете просто на основе различных типов модификаторов или вернуться к перегруженных методов.
переменная Range является частью программы, где можно ссылаться переменная.
Переменные в определении метода называются локальными переменными.
Объем локальной переменной деклараций от начала до конца блока, содержащего его.
Локальные переменные должны быть объявлены прежде чем они могут быть использованы.
Способ охватывает весь диапазон параметров метода. Параметр фактически является локальной переменной.
Инициализация переменной частью для оператора цикла, сфера его роли в цикле.
Но переменная тело оператора цикла является утверждение его объема от него до конца цикла. Он содержит переменную, объявленную следующим образом:
Вы можете таким образом, различные невложенных блоки повторно объявить локальную переменную с тем же именем, но вы не можете быть вложены в блоке дважды, чтобы объявлять локальные переменные.
Иногда вы хотите запустить программу, когда она затем передает сообщение. Это зависит от передачи аргументов командной строки для основной функции (), чтобы достичь.
Командная строка аргумент сопровождается информацией о времени выполнения после имени программы.
Следующая программа выводит все аргументы командной строки:
public class CommandLine { public static void main(String args[]){ for(int i=0; i<args.length; i++){ System.out.println("args[" + i + "]: " + args[i]); } } }
Как будет показано ниже, запустите программу:
java CommandLine this is a command line 200 -100
Результаты следующие:
args[0]: this args[1]: is args[2]: a args[3]: command args[4]: line args[5]: 200 args[6]: -100
Когда объект создается, когда конструктор используется для инициализации объекта. И именно в конструктор класса с тем же именем, но конструктор не имеет возвращаемого значения.
Часто используют конструктор для экземпляра класса переменных начальных значений, или выполнить другие действия, необходимые для создания полного объекта.
Будь или не вы пользовательский конструктор, все классы имеют конструктор, потому что Java автоматически предоставляет конструктор по умолчанию, который все члены инициализируются к нулю.
После того как вы определили свой собственный конструктор, конструктор по умолчанию не будет выполнена.
Ниже приведен пример использования конструктора:
// 一个简单的构造函数 class MyClass { int x; // 以下是构造函数 MyClass() { x = 10; } }
Вы можете назвать как этот конструктор для инициализации объекта:
public class ConsDemo { public static void main(String args[]) { MyClass t1 = new MyClass(); MyClass t2 = new MyClass(); System.out.println(t1.x + " " + t2.x); } }
Большую часть времени нужен параметр конструктора.
Ниже приведен пример использования конструктора:
// 一个简单的构造函数 class MyClass { int x; // 以下是构造函数 MyClass(int i ) { x = i; } }
Вы можете назвать как этот конструктор для инициализации объекта:
public class ConsDemo { public static void main(String args[]) { MyClass t1 = new MyClass( 10 ); MyClass t2 = new MyClass( 20 ); System.out.println(t1.x + " " + t2.x); } }
Результаты следующие:
10 20
По состоянию на JDK 1.5, поддержка Java, передавая тот же тип переменных параметров для метода.
Объявите переменные параметры метода заключаются в следующем:
typeNameru. parameterName
В ППР, указанный тип параметра после добавления многоточие (ru.).
Способ может указать только один переменный параметр, то он должен быть последним параметром метода. Любые общие параметры должны быть объявлены перед ней.
public class VarargsDemo { public static void main(String args[]) { // 调用可变参数的方法 printMax(34, 3, 3, 2, 56.5); printMax(new double[]{1, 2, 3}); } public static void printMax( doubleru. numbers) { if (numbers.length == 0) { System.out.println("No argument passed"); return; } double result = numbers[0]; for (int i = 1; i < numbers.length; i++) if (numbers[i] > result) result = numbers[i]; System.out.println("The max value is " + result); } }
Приведенные выше примеры скомпилированные получены следующие результаты:
The max value is 56.5 The max value is 3.0
Java позволяет определить метод, в котором объект вызывается до деструктора сборщика мусора (переработка), этот метод называется финализации (), который используется для очистки восстановленных объектов.
Например, вы можете использовать Finalize (), чтобы гарантировать, что объект открыт файл закрывается.
В методе Finalize (), необходимо указать операцию, которая должна быть выполнена, когда объект будет уничтожен.
завершить () является общий формат:
protected void finalize() { // 在这里终结代码 }
Ключевое слово защищен является классификатор, это гарантирует, что метод финализации () никогда не вызывается код вне класса.
Конечно, сбор мусора в Java может быть сделано автоматически с помощью виртуальной машины Java. Если вы используете инструкцию, вы можете использовать метод, описанный выше.
public class FinalizationDemo { public static void main(String[] args) { Cake c1 = new Cake(1); Cake c2 = new Cake(2); Cake c3 = new Cake(3); c2 = c3 = null; System.gc(); //调用Java垃圾收集器 } } class Cake extends Object { private int id; public Cake(int id) { this.id = id; System.out.println("Cake Object " + id + "is created"); } protected void finalize() throws java.lang.Throwable { super.finalize(); System.out.println("Cake Object " + id + "is disposed"); } }
Запустите приведенный выше код, выходные результаты являются следующими:
C:\1>java FinalizationDemo Cake Object 1is created Cake Object 2is created Cake Object 3is created Cake Object 3is disposed Cake Object 2is disposed