方法
1 方法的定义
具体格式: public void setMoney(int money) 具体包含部分:1 修饰符2 返回值类型3方法名:注意规范 见名知意4参数列表:参数类型 参数名
2 方法的调用
1 静态方法
public class HelloWord {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str="HelloWord!";
int a=0;
int b=a+1;
int result=0;
for(int i=0;i<20;i++)
{
//Add方法调用
result= Add(a,b);
System.out.println(str+" "+ result);
a+=i;
}
}
/**
* 被调用方法,这里使用了static声明为静态方法
* @param x
* @param y
* @return
*/
private static int Add(int x,int y)
{
return x+y;
}
2 非静态方法
public class HelloWord {
/**
* @param args
*/
public static void main(String[] args) {
String str="HelloWord!";
int a=0;
int b=a+1;
int result=0;
for(int i=0;i<20;i++)
{
HelloWord helloword=new HelloWord();
//通过实例化的类进行Add方法调用
result=helloword.Add(a, b);
System.out.println(str+" "+ result);
a+=i;
}
}
/**
* 被调用方法,没被static修饰,不是静态方法。调用时需要通过类的实例化进行调用
* @param x
* @param y
* @return
*/
private int Add(int x,int y)
{
return x+y;
}
}
3 值传递和引用传递
值传递的过程
值传递
public class demo04 {
public static void main(String[] args) {
int a =1;
System.out.println(a);
//调用函数
demo04.change(a);
System.out.println(a);
//结果为1
}
//因为返回值为空
public static void change (int a){
a = 10;
}
}
引用传递
public class Demo05 {
public static void main(String[] args) {
Person person = new Person();
System.out.println(person.name);//结果为null
Demo05.change(person);
System.out.println(person.name);//结果是美女
}
public static void change(Person person){
person.name= "美女";
//preson 是一个对象,指向的是 Person person = new Person();这是一个具体的人,可以改变属性
}
}
class Person{
String name ;//默认值是null
我是一个平平无奇的博客搬运工
浙公网安备 33010602011771号