luke003 2016-01-11 14:40 采纳率: 100%
浏览 1581
已采纳

java小白又来问问题啦。关于方法调用

直接上代码啦:问题也在代码的解释里啦:麻烦各位大神啊

public class Method{
public static void main(String[]args){//main方法可以调用main方法所在的类中的定义的其他方法,也可以调用别的类中的方法。(书上这么写的)
System.out.print("The grade is:");
printGrade(78.5);//调用方法时要注意参数的传递,在 这里78.5就是实参(自己的笔记)
System.out.print("The grade is:");
printGrade(59.5);
}

public static void printGrade(double score){ 
    //返回值类型为void的方法,调用时必须是一条语句。那为什么在这个代码里不是用一个语句调用,而是直接方法名调用?(这个就是我的问题啦)


    if(score>=90){
        System.out.println("A");
    }else if(score>=80){
        System.out.println("B");
    }else if(score>=70){
        System.out.println("C");
    }else{
        System.out.println("F");
    }
}

}

  • 写回答

3条回答 默认 最新

  • threenewbee 2016-01-11 14:50
    关注
     如果是
    class A
    {
    public static void printGrade(double score){ 
        //返回值类型为void的方法,调用时必须是一条语句。那为什么在这个代码里不是用一个语句调用,而是直接方法名调用?(这个就是我的问题啦)
    
    
        if(score>=90){
            System.out.println("A");
        }else if(score>=80){
            System.out.println("B");
        }else if(score>=70){
            System.out.println("C");
        }else{
            System.out.println("F");
        }
    }
    }
    在你的main里面调用就不能是printGrade(78.5);必须是A.printGrade(78.5);
    再修改下,去掉static
    那么就不能A.printGrade(78.5);
    必须是new A().printGrade(78.5);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办