㈠ java主函数怎么调用方法
调用方法:先生成一个对象,用“对象.方法()”的方式调用。
调用说明:java中的main方法是静态的,用于程序的入口,在静态方法中无法调用非静态方法,只能调用静态方法。想调用静态方法的话就要先生成该类的一个对象,通过对象调用非静态方法。
调用举例:
public class A{
public static void main(String[] args){
A a = new A();
a.aaa();
}
public void aaa(){}
}
㈡ Java函数调用
public class Stringcs {
int cou;
int n;
long sum;
public static void main(String[] args) { Stringcs stringcs = new Stringcs(3,4);
stringcs.cc();
System.out.println(stringcs.sum);
} //构造,传入n个数 cou值 public Stringcs(int n,int cou) {
this.n=n;
this.cou=cou;
sum=0;
} //控制第几次相加 public void cc(){
for (int i = 1; i <= n; i++) {
this.js(i);
}
} //累加
public void js(int ts){
long l = this.sums(ts);
sum+=l;
} //生成 a aa aaa aaa调用的方法
public long sums(int ns){
long sss=cou;
for (int i = 1; i < ns; i++) {
sss=sss*10+cou;
}
return sss;
}
}
㈢ java中方法调用时的写法
如果是非静态的方法1调用非静态的方法2,那么
非静态方法2所在类的实例引用.非静态方法2
public class Test{
public void getMethod(){
Test t=new Test();
t.getTwoMethod();
}
public void getTwoMethod(){
}
}
如果静态调用静态:
public class Test{
public static void main(String[]args){
Hello();
}
public void Hello(){
System.out.println("HELLOWORLD")
}
}
如果是继承的话:
public class a{
public void jj(){}
}
public class b extends a {
public void hh(){
super.jj();
}
}
㈣ 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中把函数叫做方法!
方法就是生活中的功能,方法定义就是创建功能,方法调用就是使用功能。
我现在要输出一个字符串,这个字符串需要上下都有一行“*”,并且要求星星的个数与输出的字符串长度相同。如果字符串是Hello World!,那么星星的个数是12个。
public static void main(String[] args) {
String s = "Hello World!";
int len = s.length();
for(int i = 0; i < len; i++) {
System.out.print("*");
}
System.out.println();
System.out.println(s);
for(int i = 0; i < len; i++) {
System.out.print("*");
}
System.out.println();
}
上面的代码可以完成任务,但是如果我再要你输出一个Hello Java!也要求用星星装饰。你还需要把上面的代码再打一次。这会很麻烦!这时我们可以创建一个方法,然后重复调用这个方法就可以了。也就是创建一个功能,然后重复使用这个功能!
public static void printStr(String s) {
int len = s.length();
printXing(len);
System.out.println(s);
printXing(len);
}
public static void printXing(int n) {
for(int i = 0; i < n; i++) {
System.out.print("*");
}
System.out.println();
}
public static void main(String[] args) {
printStr("Hello World!");
printStr("Hello Java!");
}
===============
方法可以重用,也就是功能一旦创建用可以多次使用!
在生活中功能是不能独立存在的,它必须属于某个物体,也就是对象。例如车有行驶,停止等功能,车就是对象!在Java中方法也需要指定属于哪个对象,这样的方法就是实例方法。
功能有时还需要有参数,例如你想使用电脑的功能,那你需要给电脑的开机方法提供电。你想使用汽车的行驶方法,你需要给车提供汽油。上面方法中printStr方法需要的参数是要输出的字符串。
方法分类:
有参、无参
有返回值、无返回值
实例方法、静态方法
=====
相对而言,方法还有主调与被调关系!
同一类中是否可以有两个名称、参数列表一样方法呢?
编译器如何区分方法,JVM又是如何区分方法!
Java中的getter桥方法区别在哪里?
方法的递归调用!
无返回值方法如何使用return
方法的覆盖、方法的重载
方法的修饰:abstract、final、static、native、strictfp、synchronized
===============
学习Java,理解它很重要。但理解不等于会,想学会一定要多练习!!!
有学生问过我说:“老师,你给我们打的代码我都能看懂,但为什么你让我们自己打时我就打不出来了呢?一点思路都没有了!”
理解了方法是什么,你就会在你的程序中定义方法,调用方法了吗?不是!你认识汉字吗?你认识为什么写不出来诗呢?你能看懂李白的“将进酒”吗?看懂了为什么你写不出来呢?想写诗怎么办,答案是多看别人的诗,注意别人的诗在哪些地方用了哪些字!然后自己写一些简单的,来模仿别人的,模仿的时间长了,也就会了。
㈥ java函数调用问题
调用静态方法可以直接用类名,调用非静态方法必须用对象。
举例如下:
publicclassA{
//静态方法
publicstaticvoida1(){
System.out.println("静态方法");
}
//非静态方法
publicvoida2(){
System.out.println("非静态方法");
}
}
测试类:
publicclassTest{
//main方法也是静态的
publicstaticvoidmain(String[]args){
//创建对象
Aaa=newA();
//通过类名访问
A.a1();
//通过对象访问
aa.a2();
}
}
运行结果:
㈦ java 调用函数有几种方法
在同一个类中 的方法可以直接调用。 等同于 this.method() 这里这个this.可以省略。
但是 在静态方法中不能直接调用非静态的方法。
再有其他的方式就是反射了 可以通过Class对象调用方法 java.lang.reflect
㈧ java函数调用
当你
informationvalue=(information)map.get(key);
System.out.println(value);
其实就是调用的 value 的toString方法
如果你没有在information 类里面 重写 toString 方法的话,那么默认调用的是 Object类的toString方法,也就是类似于输出
student.information@25154f
这种格式
Object类中的toString类实现比较简单,其源代码为:
publicStringtoString(){
returngetClass().getName()+"@"+Integer.toHexString(hashCode());
}
㈨ JAVA编程。函数调用
getO().getX()是获取Point对象 中的X getX()在Point类中 返回的是X
㈩ java Main函数怎么调用其他函数。 其他类。
主函数main前必须有static修饰符,static表示是静态。
一般,在静态的方法中,若要|-直接-|调用其他方法,那么被调用的也必须是静态。
你的程序中包含两个部分
方法getInt() 和主函数main 其中主函数是静态(main必须是静态)。
那么要在main中直接调用getInt()是不可以了,因为getInt没有用static修饰,也就是说getInt不是静态。
将public void getInt() 修改成 public static void getInt() ,追加静态修饰符static后可直接调用。
主函数main修改为
public static void main(String[] args)
{
getInt(); //这里调用了上面的方法
System.out.println("总共有括号对数:");
}
返回值:
有些方法是带有返回值的,取决于你的用途。能不能带返回值取决于void修饰符
普通方法,无返回值void修饰 。如 public void fangfa()这是无返回值的
public int fangfa() 这个是有返回值的,而且返回值必须是int
举个例子
public int getPlayercounts()
{
int playercount = 0 ;//一般先初始化一个相应的变量待用(重要)
for (int i = 0 ; i < 99 ; i ++) //一些相关的计算和方法开始..
playercount ++ ;
return playercount; //返回一个int值(重要,而且是必须)
}
当你的方法不是用void修饰 而是用其他数据类型修饰,均是要有返回值的,也就是说在方法的结束为止至少要有一个return + 相应的数据类型的变量 来结束。
那么返回值究竟有什么意义呢?
看下面这个例子、
public static int getPlayercounts() //注意我用了static 这是一个静态方法
{
int playercount = 0 ;//一般先初始化一个相应的变量待用(重要)
for (int i = 0 ; i < 99 ; i ++) //一些相关的计算和方法开始..
playercount ++ ;
return playercount; //返回一个int值(重要,而且是必须)
}
public static voin main(String[] args)
{
System.out.println("一共有"+getPlayercounts()+"个玩家");
}
看出来了吧,getPlayercounts()执行后 会获得执行时得到的int数,在一些需要最后得到某个结果的方法中,用含有返回值的方法是非常方便的。
==============================================
你的代码完全修改后如下,因为你需要的是得到括号数,所以将你的原有方法改成一个返回int值得方法。
public class java
{
public static int getInt()// 原来是 public void getInt() ,修改后增加了static修饰, int替换了void
{
String strChar="a(bc)()()dnn()()j";
int iX=0;
int iY=0;
for(int p=0; p<strChar.length();p++)
{
String getstr=strChar.substring(p,p+1);
if(getstr.equals("(")){iX++;}
if(getstr.equals(")")){iY++;}
}
return Math.min(iY, iX);//取两者之间的最小值(即括号对数)作为返回值
}
public static void main(String[] args)
{
System.out.println("总共有括号对数:"+getInt());
}
}
郁闷 写了半天发现你已经认可了。。