关于c与java在调用函数上的区别

在c语言中,调用函数需要我们在主函数之前声明或者定义一个函数。然后在我们需要调用的时候就只需要输入相对应的函数名称即可,如:

#include <stdio.h>

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

int main(){
    int a = 1 ,b = 2 ;
    printf( %d , sum(a,b) );
    return 0;
}

 

然而在Java中,这样做是不对的~~~因为java语言面向对象的特殊性,所以:

第一种,当我们在同一个类中定义了主函数和函数,其中包括构造函数和非构造函数,<font color = red size = 3>构造函数在实例化对象时候使用,必须与类名相同,且不需要数据类型的声明</font>。当我们想让主函数去调用函数时,我们需要在主函数中定义一个新的对象,然后将我们的类套在这个对象上,构造函数就会同时进行,而当我们想要调用非构造函数的时候,我们就按照java调用函数的一般步骤进行即可,如:
 

class Human{
    
    Human(){
        System.out.println("Human被实例化");
    }

    String Work(String workName){
         System.out.println("小刚的工作是" + workName);
         return "dhashsd";
    }

    public static void main(String[] args){
        Human xiaoming = new Human();
		
        Human xg =new Human();
		String str = xg.Work("神奇宝贝驯兽师");
        System.out.println(str + "是work函数的返回值");
    }
}

第二种,在不同的类中定义主函数与函数,方法与第一种大致一样,只是形式上的不同,如:

class Human{
    
    Human(){
        System.out.println("Human被实例化");
    }

    String Work(String workName){
         System.out.println("小刚的工作是" + workName);
         return "dhashsd";
    }

}

class Zhuti{
	public static void main(String[] args){
        Human xiaoming = new Human();
		
        Human xg =new Human();
		String str = xg.Work("神奇宝贝驯兽师");
        System.out.println(str + "是work函数的返回值");
    }
}

第三种,我们可以在同一个文件夹中写出两个文件,第一个文件中,我们来写入函数,第二个文件中,我们写入主函数并调用第一个文件里面的函数,方法如下:

class Human{
    
    Human(){
        System.out.println("Human被实例化");
    }

    String Work(String workName){
        System.out.println("小刚的工作是" + workName);
        return "dhashsd";
    }
	
	String Work(int num){
		System.out.println("这是小刚的第" + num + "份工作");
		return "dhashsd";
	}
	
	String Work(){
		System.out.println("小刚的工作伙伴是小智");
		return "dhashsd";
	}
}//这是第一个文件
class Zhuti{
	public static void main(String[] args){
        Human xiaoming = new Human();
		
        Human xg =new Human();
		String str = xg.Work("神奇宝贝驯兽师");
        System.out.println(str + "是work函数的返回值");
		
		xg.Work(3);
		xg.Work();
    }
}//这是第二个文件

在第三种方法中,我用到了函数重载。在Java中定义函数是可以存在函数重载的,即在一个类中可以定义许多函数名
相同但参数类型和参数个数可以不同。但是,需要注意的是,第一:重载的函数的数据类型必须保持一致;第二:在
主函数中调用重载函数时,输入的参数决定了调用重载函数的哪一个。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值