导航:首页 > 编程语言 > java如何调用函数

java如何调用函数

发布时间:2022-10-02 21:56:19

‘壹’ java如何调用另个程序的main函数

Main方法是用static修饰的,有2种方法可以调用:

1、类名.main(参数);

2、new创建实例,实例.main(参数);

这个地方注意必须传递字符串数组的参数 或者 null !另外举一个用反射机制调用Main方法的例子。

这个类是被调用的main方法类:

Java代码:

public class Run

{

public static void main(String[] args)

{

String str=args[0]+"Hello World";

System.out.println(str);

}

}

下面是调用main方法的类:

Java代码:

public class JobRun

{

public static void main(String[] args)

{

String idStr = "YAya";

try

{

Method method = Run.class.getMethod("main", String[].class);

method.invoke(null, (Object) new String[] { idStr });

}

catch (Exception e)

{

e.printStackTrace();

}

}

}

(1)java如何调用函数扩展阅读:

main方法是一个特殊的方法,是程序执行的入口,一个Java程序从main方法开始执行。Java虚拟机在执行Java程序之前会事先分配一个主线程,然后在主线程里面执行我们这个main方法。

线程就是一个程序里面不同的执行路径!总之,就记住,Java程序从main方法开始执行,

比如:

public static void main(String[] args) {

System.out.println("nihao");

}

在这里当程序运行的时候,从main方法进来,然后做的第一件事就是System.out.println("nihao");

注意: main方法执行结束,程序也就执行结束了!

‘贰’ java中一个函数如何多次调用另一个函数

java中要多次调用函数(方法),无参数的函数(方法)只需写上函数名即可,有参数的函数(方法)把参数传进来即可。
具体事例代码如下:
public class Demo {
public static void main(String[] args) {
int a = a(2);//第一次调用
int b = a(4);//第二次调用
}
private static int a(int i){
return i;
}
}
要注意的是:在调用没有返回值的函数(方法)时,不能给变量赋值,因为函数(方法)本身没有返回值,就没有值赋值给变量了。

‘叁’ java中一个类怎么调用另一个类中的函数

首先这两个类不在同一个包
1 在usermn中导包
import md.md5;
2.在usermn中创建md5的对象
md5 XX = new md5();
接下来就可以用XX.getMD5ofStr(String inbuf);
调用到md5类里面的函数

满意请采纳 多谢合作!!

‘肆’ java中含参函数怎么调用

系统不会在调用有参构造方法的时候自动调用无参构造方法。需要自己手工实现
1、在有参构造函数中调用无参构造函数
例如:
public
class
ta{
public
ta(){//定义无参构造函数
}
public
ta(int
a){//定义有参构造函数
this();//调用无参构造函数
}}

‘伍’ java 内部类怎么调用外部类的函数

你好!
方法1:定义内部类的一个对象,用该对象调用外部类的成员函数
方法2:直接用语句:this.外部类的成员函数名。
仅代表个人观点,不喜勿喷,谢谢。

‘陆’ JAVA如何调用C函数

要在java中调用c语言的库,需要使用Java提供了JNI。
举例说明
在c语言中定义一个 void sayHello()函数(打印Hello World);然后在Java中调用这个函数显示Hello Word.
现在分别从Java和C语言两部分说明:
1. Java 部分
首先定义一个HelloNative,在其中申明sayHello函数,函数要申明为Native 类型的.如下:
public class HelloNative {
public native void sayHello();
}

编译这个类,生成class文件:
javac HelloWorld.java

利用javah生成需要的h文件
javah HelloNative

生成的 h文件大概如下:

/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class HelloNative */

#ifndef _Included_HelloNative
#define _Included_HelloNative
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: HelloNative
* Method: sayHello
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_HelloNative_sayHello
(JNIEnv *, jobject);

#ifdef __cplusplus
}
#endif
#endif

可以看一下上面自动生成的程序,程序include了jni.h,这个头文件在 $JAVA_HOME下的include文件夹下. 还可以发现生成的函数名是在之前的函数名前面加上了Java_HelloNative。
2. C语言部分
根据上面生成的h文件编写相应的代码实现,建立一个 HelloNative.cpp用来实现显示Hello World的函数.如下:

#include <stdio.h>
#include "HelloNative.h"

JNIEXPORT void JNICALL Java_HelloNative_sayHello(JNIEnv *, jobject)
{
printf("Hello World!\n");
}

代码编写完成之后,我们再用gcc编译成库文件,命令如下;
gcc -fPIC -I/usr/lib/jvm/java-7-openjdk-i386/include -I/usr/lib/jvm/java-7-openjdk-i386/include/linux -shared -o libHelloNative.so HelloNative.cpp

这样就会在当前目录下生成一个libHelloNative.so的库文件.这时需要的库已经生成,在C语言下的工作已经完成了.
接下来需要在Java中编写一个程序测试一下.在程序前,需要将我们的库载入进去.载入的方法是调用Java的 System.loadLibrary("HelloNative");

public class TestNative
{
static {
try {
System.loadLibrary("HelloNative");
}
catch(UnsatisfiedLinkError e) {
System.out.println( "Cannot load hello library:\n " + e.toString() );
}
}
public static void main(String[] args) {
HelloNative test = new HelloNative();
test.sayHello();
}
}

但是再编译后,运行的时候,问题又出现了.
Cannot load hello library:
java.lang.UnsatisfiedLinkError: no HelloNative in java.library.path
Exception in thread "main" java.lang.UnsatisfiedLinkError: HelloNative.sayHello()V
at HelloNative.sayHello(Native Method)
at TestNative.main(TestNative.java:13)

载入库失败,但是库明明就是放在当前文件夹下的,怎么会载入失败呢?
用System.getProperty("java.library.path")查看,发现java.library.path中并不u存在当前的目录.主要有以下的几个解决办法:
1) 将生成的库复制到java.library.path有的路径中去,当然这样不是很好
2) 设置环境变量export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH ,将当前的目录加入到LD_LIBRARY_PATH中
3) 设置java 的选项,将当前的目录加入到其中 .java -Djava.library.path=. $LD_LIBRARY_PATH
这样之后程序就能够成功的运行了.可以看见显示的"Hello World!"了

‘柒’ java 函数调用

貌似你的第一个类和后面的代码没什么联系吧。然后你把第二个类的代码写了两次。如果我没看错的话,应该是完全一样的。然后你在第二个类中将一个函数递归调用,并把参数原封不动地传来传去。估计是你打错了吧。你想写的是不是
gouzao_hanshuyong1.java:
public class gouzao_hanshuyong1 {
int a = 123;
void hanshu_1() {
System.out.print("hanshu_1" + a);
}}

gouzao_hanshuyong2.java:
class gouzao_hanshuyong2{
public static void main(String[] args) {
hanshu_2(new gouzao_hanshuyong1());
}
public static void hanshu_2(gouzao_hanshuyong1 g)
{g.hanshu_1();}
}
如果是这样的话,运行结果应该是hanshu_1123
如果不是,请把你的问题说的清楚点,或者说明一下你的程序是要干嘛

‘捌’ JAVA中定义了函数,有返回值,怎么调用

sum是在方法中,当这个方法执行完之后,sun就消失了。调用的话可以在主方法或者其他方法中定义
int
sum
=
add(1,2);返回值就赋值给新的sum了。至于打印的话,直接在return前面加个输出语句就行了。
system.out.println("sum是:"+sum);

‘玖’ java函数调用(在一个类中怎么调用另一个类的变量和函数)

import java.util.Scanner;

public class Student {//带有主函数的类,Score类在下面
String name;
Score score=new Score();//此句有重大嫌疑

public String introce()
{

return(name+"\t"+score.java+"\t"+score.db+"\t"+score.c+"\t"+score.sum()+"\t"+score.avg());//name之后的全部显示为0
}

public static void main(String args[])
{
Student stu[]=new Student[10];
Score score[]=new Score[10];
Scanner in=new Scanner(System.in);

for(int i=0;i<3;i++)
{
stu[i]=new Student();
score[i]=new Score();
System.out.println("学生"+(i+1)+"的名字:");
stu[i].name=in.next();
System.out.println("学生"+(i+1)+"java成绩:");
score[i].java=in.nextFloat();
System.out.println("学生"+(i+1)+"DB成绩:");
score[i].db=in.nextFloat();
System.out.println("学生"+(i+1)+"C语言成绩:");
score[i].c=in.nextFloat();
}
System.out.println("姓名\tjava成绩\tDB成绩是\tc语言成绩\t总成绩\t平均成绩");
for(int j=0;j<3;j++)
{
System.out.println(stu[j].introce());
}

}
} //错误之二:少了一个右边大括号,造成第一个类不完整
class Score {//score类 错误地方一:在一个java文件中只允许有一个功能类 去掉public 就好了

float java,db,c;
public float sum()
{
float ssum=java+db+c;
return ssum;
}
public float avg()
{
return sum()/3;
}
}

阅读全文

与java如何调用函数相关的资料

热点内容
java和php通信 浏览:679
为什么黑程序员 浏览:162
程序员男生 浏览:455
戴尔文件夹内文件怎么置顶 浏览:582
云服务器6m网速 浏览:722
vivo手机中国联通服务器地址 浏览:862
工程总控编译失败 浏览:706
燕赵红枫app如何下载 浏览:867
php查杀软件 浏览:878
教育管理学pdf 浏览:547
服务器均衡怎么使用 浏览:626
linux中jps 浏览:954
单片机实验感想 浏览:561
程序员级别数学算法逻辑 浏览:900
2k21公园怎么换服务器 浏览:724
php释放数据库连接 浏览:722
php网页抓取工具 浏览:726
android设置对齐方式 浏览:23
linux创建网页 浏览:280
净化车间门算法 浏览:934