第15节 从抽象到类(下)

第15节 从抽象到类(下)

方法的定义

方法的定义包括两部分:方法声明和方法体。一般格式为:
方法声明部分 {
方法体的内容
}

    void speedUp(int s) {      //方法定义,刻画加速功能  void代表这个方法无返回值,()代表传递的参数  这是方法声明部分
        int a;    //方法体中声明的a只能在这个方法中使用
        speed=speed+s;
        This.a    //中间这是方法体
    }
    void speedDown(int d) {   //方法定义,刻画减速功能
        speed=speed-d;
    }
    void setPower(int p) {
        power=p;
    }
    int getPower() {      //返回int类型
        return power;
    }
    double getSpeed() {     //返回double类型
       return speed;
    }
}

1)方法声明

方法声明包括方法名和方法的返回类型,如:

double getSpeed() {
return speed;
}   

注:方法的返回类型、方法的参数、方法的名字
1、return语句的作用:
a、返回一个值,这个值可以是任意类型。
b、使程序返回到操作系统(即终止程序)
2、java中对于一个函数,不论有没有返回值类型,都可以带有return 语句。但是区别在于,return 语句是否可以返回一个值(这取决与该函数的返回值类型)。
a、如果函数有返回值类型(即返回值类型不为void ),则必须带有返回相应类型值的return 语句。
b、如果函数没有返回值(即返回值类型为void ),则函数中return 语句(如果存在return语句!)的后面不能加任何的变量。(该情况下的函数中也可以没有return 语句,但是如果有的话,return 只能作为返回操作系统的作用使用。)

2)方法体

方法声明之后的一对大括号“{” ,“}”以及之间的内容称作方法的方法体。方法体的内容包括局部变量的声明和Java语句。

在方法体中声明的变量和方法的参数被称作局部变量。

局部变量只在声明它的方法内有效,而且与其声明的位置有关。方法的参数在整个方法内有效,方法内的局部变量从声明它的位置之后开始有效。如果局部变量的声明是在一个复合语句中,那么该局部变量的有效范围是该复合语。

//没有返回值的方法的创建
public class Person {
    int age;
    float height = 1.8f;
    double weight = 160;
    void eat(){
        System.out.println("eat");
    }
    void sleep(){
        System.out.println("sleep");
    }
    }
//有返回值的方法的创建
public class Person {
    int eatCount(){
        return 2;    //直接返回2
    }
}
//有返回值并且带参数的方法
public class Person {
    int eatCount2(int num){
        int result = num-2;
        return result;
    }
}

注意事项

1、如果局部变量的名字与成员变量的名字相同,则成员变量被隐藏,即这个成员变量在这个方法内暂时失效。
如果想在该方法中使用被隐藏的成员变量,必须使用关键字this

2、类体的内容由两部分构成:一部分是变量的声明,另一部分是方法的定义。 对成员变量的操作只能放在方法中,方法可以对成员变量和该方法体中声明的局部变量进行操作。在声明成员变量时可以同时赋予初值,但是不可以在类体中有单独的赋值语句(不可以有变量的声明和方法的定义以外的其它语句)

public class Person {
    int getAge(int age){    //调用这个方法的人往里面传入了一个参数,并且和这个方法同名
        return this.age;  //重名时成员变量被隐藏,如果想使用被隐藏的成员变量,必须使用关键字this
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值