网站建设公司华网天下买送活动,集团网站设计案例,网站建设中html模板,深圳市建设工程造价站官网方法的作用
将重复的代码包装起来#xff0c;写成方法#xff0c;提高代码的复用性。
方法的语法
方法的语法格式如下 : [修饰符] 方法返回值类型 方法名(形参列表)
{ //由零条到多条可执行性语句组成的方法体return 返回值;
}
定义方法语法格式的详细说明如下#xf…方法的作用
将重复的代码包装起来写成方法提高代码的复用性。
方法的语法
方法的语法格式如下 : [修饰符] 方法返回值类型 方法名(形参列表)
{ //由零条到多条可执行性语句组成的方法体return 返回值;
}
定义方法语法格式的详细说明如下
修饰符:修饰符可以省略也可以是 public 、 protected 、 private 、 static 、 final 、 abstract 其中 public 、 protected 、 private 三个最多只能出现其中之一 ; final 和 abstract 最多只能出现其中之一 它们可以 与 static 组合起来修饰方法。
方法返回值类型:返回值类型可以是 Java 语言 允许的任何数据类型包括基本类型和引用类型: 如果声明了方法返回值类型则方法体内必须有一个有效的 return语句该语句返回 一个变量或一个表达式,这个变量或者表达式的类型必须与此处声明的类型匹配.除此之外 如果一个方法没有返回值,则必须使用 void 来声明没有返回值 .
方法名:方法名的命名规则与成员变量 的命名规则基本相同但由于方法用于描述该类或该类 的实例的行为特征或功能实现因此通常建议方法名以英文动词开头 .
形参列表:形参列表用于定义该方法可以接受的参数形参列表由零组到多组参数类型形参 名组合而成 多组参数之间以英文逗号 ( ,)隔开形参类型和形参名之间以英文空格隔开。 一旦在定义方法时指定了形参列表则调用该方法时必须传入对应的参数值即谁调用方法 谁负责为形参赋值 。
方法体里多条可执行性语句之间有严格的执行顺序排在方法体前面的语句方法体里多条可执行性语句之间有严格的执行顺序排在方法体前面的语句总是先执行排在方法体后面的语句总是后执行。
方法的归属
需要定义方法则只能在类体内定义不能独立定义一个方法。一旦将一个方法定义在 某个类的类体内如果这个方法使用了 static 修饰则这个方法属于这个类否则这个方法属于这个类的实例 。 Java 语言是静态的 。一个类定义完成后只要不再重新编译这个类文件该类和该类的对象所拥有的方法是固定的永远都不会改变 。 因为 Java 里的方法不能独立存在它必须属于一个类或一个对象因此方法也不能像函数那样被独立执行。
方法的传参
声明方法时包含了形参声明则调用方法时必须给这些形参指定参数值 调用方法时实际传给形参的参数值被称为实参.那么Java 的实参值是如何传入方法的呢?
这是由 Java 方法的参数传递机制来控制的 Java 里方法的参数传递方式只有一种 : 值传递。 所谓值传递就是将实际参数值传入方法内 而参数本身不会受到任何影响。
public class Prim
{
public static void swap (int a , int b)
{
// 下面三行代码实现ab变量的值交换
// 定义一个临时变量来保存a变量的值
int tmp a;
//把b的值赋给 a
a b;
// 把临时变量 tmp 的值赋给 a
b tmp ;
System.out.println(swap 方法里 a 的值是 a b 的值是 b);
}
public static void main(String[] args)
{int a 6 ; int b 9; swap(a , b) ;
System.out.println (交换结束后变量a的值是
a:变量 b 的值是 b);
}
}
方法的重载
Java 允许同一个类里定义多个同名方法只要形参列表不同就行。如果同一个类中包含了两个或两 个以上方法的方法名相同但形参列表不同则被称为方法重载 。
方法重载的要求就是两同一不同 :同 一个类中方法名相同参数列表不同 。至于方法的其他部分与方法的重载没有任何关系。
public class Over1oad
{
//下面定义了两个test ()方法但方法的形参列表不同
//系统可以区分这两个方法这被称为方法重载
public void test()
{System.out.println(无参数);
}
public void test(String msg)
{System.out.print1n(重载的test方法msg);}
pub1ic static void main(String[] args)
{Over1oad 01 new Over1oad( );
//调用 test ()时没有传入参数因此系统调用上面没有参数的 test () 方法01.test () ;
//调用 test ()时传入了一个字符串参数
//因此系统调用上面带一个字符串参数的 test ()方法
01.test( he11o ) ;
}
}