栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

自学java第三天(方法的定义,调用,参数传递,重载)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

自学java第三天(方法的定义,调用,参数传递,重载)

个人觉得就是c里面的函数。。

package day3;

public class fangfa1 {
    public static void main(String[] args) {
        int c1=sum(10,20);
        System.out.println(c1);

    } public static int sum(int a,int b){
        int c=a+b;
        return c;
    }
}

使用方法的好处:

*提高了代码的复用性。

*让程序的逻辑更清晰。

(1)方法的定义,方法的完整格式,以及方法怎么调用执行。

package day3;

public class fangfa3 {
    public static void main(String[] args) {
        //学会方法定义其他形式,无返回无返回类型
        print();
        print();

    }
    public static void print(){
        System.out.println("123");
        System.out.println("123");
    }
}

如果方法不需要返回结果,返回值类型必须申明成 void(无返回值)

(2)方法使用的其他问题

*方法的编写顺序无所谓。

*方法和方法之间是平级关系。

*void类型的,方法内不能有return返回。反之亦然

*return下面不能写代码,无法执行。

(3)方法的案例

定义一个方法,计算1-n的和并返回

package day3;

public class fangfa4 {
    public static void main(String[] args) {
        System.out.println(sum(5));

    }
    public static int sum(int n){
        int sum=0;
        for (int i = 0; i <=n; i++) {
            sum=sum+i;
        }
        return sum;
    }
}

判断该数字是奇数还是偶数

用方法求数组元素的max

 (4)

方法的调用内存图

方法没有被调用时,在方法区的字节码文件中存放

方法被调用的时候,需要进入到栈内存中运行

(5)方法的参数传递机制

基本类型的参数传递:值传递

package day3;

public class fangfa7 {
    public static void main(String[] args) {
        //理解 java 基本类型参数传递:值传递
        int a= 10;//实参
        change(a);
        System.out.println(a);

    }
    public static void change( int a){  //形参
        System.out.println(a);
        a=20;
        System.out.println(a);

    }
}

输出结果

传递的是数值!!传递的是实参存储的值,而不是实参本身。

引用类型的参数传递:值传递 传递的是地址

package day3;

public class fangfa8 {
    public static void main(String[] args) {
        // 引用类型的参数传递 ,地址传递
        int[] arrs={10,23,45};
        System.out.println(arrs[1]);//23
        change(arrs);
        System.out.println(arrs[1]);//2

    }
    public static void change(int[] arrs){
        System.out.println(arrs[1]);//23
        arrs[1]=2;
        System.out.println(arrs[1]);//2
    }
}

 

(6)方法重载:方法名称相同,形参列表不同

package day3;

public class fangfa9 {
    public static void main(String[] args) {
        //了解方法重载
        fire();
        fire("日本");
        fire("日本",10);

    }
    public static void fire(){
        System.out.println("1");
    }
    public static void fire(String location){
        System.out.println(location+"aa");
    }
    public static void fire(String location,int number){
        System.out.println(location+number+"a");
    }
}

 可读性强。

(7)单独使用return关键字

*可以立即跳出并结束当前方法的执行

package day3;

public class fangfa10 {
    public static void main(String[] args) {
        System.out.println("开始");
      chu(10,0);
        System.out.println("结束");
    }
    public static void chu(int a,int b){
        if(b==0){
            System.out.println("您输入的数据有误");
            return; //跳出当前方法,并结束执行;
            
        }
        int c=a/b;
        System.out.println(c);
    }
}

 return:跳出并立即结束所在方法的执行

break:跳出并结束当前所在循环的执行

continue:结束当前所在循环的当次,进入下一次循环

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/854938.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号