-
方法是完成特定功能的、相对独立的程序段,与其他编程语言中的子程序、函数等概念相当,
-
方法可以多次调用
方法可分为
-
JDK提供的方法简称 API(应用程序接口)
-
自定义方法
1.方法的声明
// [修饰符] 返回值类型 方法名称 ([参数表]) //{ // // 方法体 //}
-
修饰符包括
-
访问修饰符:用于控制程序的访问权限,如: public 、 protected 、private和默认
-
非访问修饰符:用于控制程序的行为,如:static、final、abstract、synchronized、volatile等
-
其他修饰符:transient、native、strictfp、等
在java中一个程序元素可以有多个修饰符,他们的顺序可以任意排列。
-
返回值类型反映方法完成其功能后返回的运算结果的数据类型。如果没有返回值,则使用void声明
-
方法名称不能与关键字同名
-
对于有返回值的方法,其方法体中至少有一条return语句
-
return返回值的类型必须与方法声明的返回值类型一致
-
犯法不饿能嵌套,不能再一个方法中声明另一个方法
重要提示
(1)访问修饰符:用于控制程序元素的访问权限,包括 public 、 protected 、 private 和默 认(不写任何修饰符)四种。 ① public 表示公共的,可以被任何类访问。 ② protected 表示受保护的,只能被本类、同一包中的类以及子类访问。 ③ private 表示私有的,只能被本类访问。 默认修饰符(不写任何修饰符)表示包访问权限,只能被同一包中的类访问。
(2)非访问修饰符:用于控制程序元素的行为,包括 static 、 final 、 abstract 、 synchronized 、 volatile 等。 ① static 表示静态的,可以被类直接调用,也可以用于定义类变量和类方法。
② final 表示不可改变的,可以用于定义常量、禁止继承类和禁止重写方法。
③ abstract 表示抽象的,用于定义抽象类和抽象方法,不能被实例化。
④ synchronized 表示同步的,用于实现线程同步。 ⑤ volatile 表示易变的,用于标记变量为线程共享变量,保证可见性和有序性。
(3)其他修饰符:包括 transient 、 native 、 strictfp 等。 ① transient 表示短暂的,用于标记变量不参与序列化。 ② native 表示本地的,用于标记方法是本地方法(由本地代码实现)。③ strictfp 表示严格的浮点计算,用于保证浮点计算结果的可移植性和精度。
在Java程序中,main()方法是程序的入口点。是一个特殊方法,Java虚拟机(JVM)将从这个歌方法开始执行程序,main方法必须是静态的(static),因为JVM在执行main()方法之前没有创建任何对象实例。
2.方法的使用
调用方法
public static void main(String[] args) { for (int i = 0; i < 3; i++) { myprint(); } } public static void myprint() { System.out.println("铁子"+666); } // 在main方法中调用了myprint方法
3.方法的返回值
方法的设计遵循单一原则,即一个方法干一件事。
方法的返回值必须和声明一致
public static void main(String[] args) { for (int i = 0; i < 3; i++) { System.out.println(myprint()); } } public static String myprint() { return "铁子666"; } // 在main方法中调用了myprint方法
4.方法的参数
4.1可变长参数(不定长参数)
操作不定长参数与操作数组相同
public static int add(int... a) { return 0; }