精华内容
下载资源
问答
  • 以典型的赋值调用为例进行方法的过程调用的图解

    在这里插入图片描述在这里插入图片描述

    以典型的赋值调用为例进行方法的过程调用的图解
    在这里插入图片描述

    展开全文
  • 主要为大家介绍了dedecms列表页上一页下一页翻页单独调用的方法,涉及针对列表页底层代码部分修改,对于dedecms二次开发有一定借鉴价值,需要朋友可以参考下
  • 主要介绍了详解dedecms搜索页面单独调用搜索结果条数的实现方法的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 单独调用,打印调用,赋值调用区别 package com.demo01; public class demo03 { public static void main(String[] args) { //单独调用,结果返回method1方法,main方法不显示 method1(10,20); //打印调用 ...

    单独调用,打印调用,赋值调用的区别

    package com.demo01;
    
    public class demo03 {
        public static void main(String[] args) {
            //单独调用,结果返回method1方法,main方法不显示
            method1(10,20);
            //打印调用
            System.out.println("打印调用:"+method1(20,20));
            //赋值调用,结果返回sum
            int sum = method1(20,30);
            System.out.println("赋值调用:"+sum);
    
        }
    
        public static int method1(int a,int b){
            int result = a + b;
            return result;
        }
    }
    
    
    展开全文
  • 我正在尝试从Java中的单独类中调用方法,但它似乎不起作用,或者我做错了什么.我想要实现的是将RaceEvent类中的Race方法调用到我的主程序中(检查主程序中的注释).这是课程:import java.util.Random;public class ...

    我正在尝试从Java中的单独类中调用方法,但它似乎不起作用,或者我做错了什么.我想要实现的是将RaceEvent类中的Race方法调用到我的主程序中(检查主程序中的注释).

    这是课程:

    import java.util.Random;

    public class RacingEvent {

    private SimpleWindow w;

    private RaceTrack track;

    private Turtle t1 = new Turtle(w, 200, 400);

    private Turtle t2 = new Turtle(w, 300, 400);

    public RacingEvent(RaceTrack track, Turtle t1, Turtle t2) {

    this.t1 = t1;

    this.t2 = t2;

    this.track = track;

    }

    public void Race() {

    t1.penDown();

    t2.penDown();

    Random rand = new Random();

    Turtle t1 = new Turtle(w, 200, 400);

    Turtle t2 = new Turtle(w, 300, 400);

    while (t1.getY() > track.getyFinish() && t2.getY() > track.getyFinish()) {

    int turtle1 = rand.nextInt(3);

    int turtle2 = rand.nextInt(3);

    t1.forward(turtle1);

    t2.forward(turtle2);

    SimpleWindow.delay(10);

    }

    int diff1 = t1.getY() - track.getyFinish();

    int diff2 = t2.getY() - track.getyFinish();

    SimpleWindow w = new SimpleWindow(200, 100, "Winner");

    if (t1.getY() <= track.getyFinish()) {

    w.moveTo(20, 40);

    w.writeText("T1 won with a " + diff2 + " step(s) lead!");

    } else if (t2.getY() <= track.getyFinish()) {

    w.moveTo(20, 40);

    w.writeText("T2 won with a " + diff1 + " step(s) lead!");

    }

    }

    }

    这是我需要调用该方法的主程序:

    public class TurtleRace {

    public static void main(String[] args) {

    SimpleWindow w = new SimpleWindow(600, 600, "TurtleRace");

    int yStart = 400;

    int yFinish = 100;

    RaceTrack track = new RaceTrack(w, yStart, yFinish);

    ColorTurtle t1 = new ColorTurtle(w, 250, yStart, java.awt.Color.RED);

    ColorTurtle t2 = new ColorTurtle(w, 350, yStart, java.awt.Color.BLUE);

    track.draw(w);

    w.waitForMouseClick();

    RacingEvent event = new RacingEvent(track, t1, t2);

    /*Call Race Method*/

    }

    }

    解决方法:

    当你这样做

    RacingEvent event = new RacingEvent(track, t1, t2);

    您只是在创建和实例化RacingEvent类的对象.

    函数调用尚未进行.

    您应该编写此代码来调用该函数.

    event.Race();

    希望它能解决问题.

    标签:java,class,methods

    来源: https://codeday.me/bug/20191031/1977099.html

    展开全文
  • 1,概述 假设我们玩一个游戏,在游戏...上述过程中,所提取出来代码就可以认为是一个程序中定义一个方法,在需要时候调用即可。 简单说:方法就是完成特定功能代码块 有些语言里由函数定义,在java中函数

    1,概述

    • 假设我们玩一个游戏,在游戏过程中我们要不断的释放技能,假设这个技能的释放由100行代码完成的,在每次释放技能的时候都需要把100行代码写一遍,太麻烦,重复东西太多,程序可读性差。
    • 为了解决这个问题,我们可以把释放技能的代码提取出来放在一个{}中。并给他起个名字,这样的话,我们在每次需要释放技能的时候只需要通过这个名字来调用即可。
    • 上述过程中,所提取出来的代码就可以认为是一个程序中定义的一个方法,在需要的时候调用即可。
    • 简单说:方法就是完成特定功能的代码块
    • 有些语言里由函数的定义,在java中函数就是方法

    2,方法的定义格式

    						参数列表
    修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,....){
    			方法体(函数体):就是完成特定功能的代码
    			return 返回值;
    		}
    

    解释:

    修饰符:目前就用 public static 
    返回值类型:就是功能结果的数据类型
    方法名:为了方便调用起的名字  符合命名规则
    参数:
    	实际参数:就是实际参与运算的
    	形式参数:就是方法上定义的,用来接收实际参数的
    参数类型:就是参数的数据类型
    参数名:就是变量名
    方法体:就是完成特定功能的代码
    return: 结束方法,把结果返回给调用者
    返回值:就是方法的结果,由return带给调用者
    
    • 如何才能写好一个方法:
      在写方法前必须先确定2个东西:
        返回值类型:就是功能结果的数据类型
        参数列表:要几个参数,每个参数的数据类型是什么

    • 举个栗子:
      写一个求2个数据之和的方法

    • 方法特点:
      不调用,不执行

    • 如何调用呢?(有明确返回值的方法的调用)
        单独调用 sum(a,b); 一般来说没有意义
        输出调用 System.out.println(sum(a,b)); 可能还需要针对结果进行进一步操作
        赋值调用 int result = sum(a,b); 推荐用这种

    class Sum{
    	public static void main(String[] args){
    		int x = 5;
    		int y = 6;
    		//方式一:单独调用
    		sum(x,y);
    		//方式二:输出调用
    		System.out.println(sum(x,y));
    		//方式三:赋值调用
    		int result = sum(x,y);
    		System.out.println(result);
    	}
    	
    	//求2个数之和   int
    	/*
    		确定2个东西:
    			返回值类型:int
    			参数列表:2个,都是int类型
    	*/
    	public static int sum(int a,int b){
    		//int c = a+b;
    		//return c;
    		return a+b;
    	}
    }	
    

    在这里插入图片描述

    练习1

    键盘输入2个数据,求和,返回较大值,比较是否相等。

    import java.util.Scanner;
    class Test1{
    	public static void main(String[] args){
    		Scanner sc = new Scanner(System.in);				//键盘输入
    		System.out.println("请输入两个数字");				//提示用户输入两个数字
    		int a = sc.nextInt();
    		int b = sc.nextInt();
    		
    		int result1 = sum(a,b);								//调用sum方法
    		System.out.println(a+"+"+b+"="+result1);			
    		
    		int result2 = getMax(a,b);							//调用getMax方法
    		System.out.println(a+"和"+b+"较大的是"+result2);	
    		
    		boolean result3 = biJiao(a,b);						//调用biJiao方法
    		if(result3){
    			System.out.println(a+"和"+b+"相等");
    		}
    		System.out.println(a+"和"+b+"不相等");
    	}
    	public static int sum(int a, int b){					//求和
    		int c = a + b;
    		return c;
    	}
    	public static int getMax(int a,int b){					//返回较大值
    		int c = a > b ? a:b;
    		return c;
    	}
    	public static boolean biJiao(int a,int b){				//判断是否相等
    		boolean c = a==b;
    		return c;
    	}
    }
    

    练习2

    键盘输入3个数据,求和,返回较大值

    import java.util.Scanner;
    class Test2{
    	public static void main(String[] args){
    		Scanner sc = new Scanner(System.in);				//键盘输入
    		System.out.println("请输入三个数字");				//提示用户输入三个数字
    		int a = sc.nextInt();
    		int b = sc.nextInt();
    		int c = sc.nextInt();
    		
    		int result1 = sum(a,b,c);								//调用sum方法
    		System.out.println(a+"+"+b+"+"+c+"="+result1);			
    		
    		int result2 = getMax(a,b,c);							//调用getMax方法
    		System.out.println(a+"和"+b+"以及"+c+"中较大的是"+result2);	
    		
    	}
    	public static int sum(int a, int b,int c){					//求和
    		int d = a + b +c;
    		return d;
    	}
    	public static int getMax(int a,int b,int c){					//返回较大值
    		//方法1:先比较a,b。再用a,b中较大的和c比较,得出最大的
    		//int temp = a > b ? a:b;
    		//int max = temp > c ? temp:c; 
    		
    		//方法2:
    		int max = a>b? (a>c?a:c) : (b>c?b:c);
    		return max;
    	}
    }
    

    3,方法的注意事项

    • 方法不调用不执行
    • 方法和方法是平级的,不能嵌套定义
    • 方法的参数之间是用逗号隔开的
    • 定义时设置参数类型,调用时不用传递数据类型
    • 若方法有明确的返回值,一定要有return,还必须返回一个值

    4,void类型方法的调用

    • 单独调用
    • 输出调用(错误)
    • 赋值调用(错误)
    /*
    我要在控制台上输出如下图形
    ******
    ******
    ******
    */
    import java.util.Scanner;
    class Demo{
    	public static void main(String[] args){
    		/*
    		//打印3行7列的
    		for(int i=1;i<4;i++){
    			for(int j=1;j<8;j++){
    				System.out.print("*");
    			}
    			System.out.println();
    		}
    		System.out.println("--------------------");
    		//打印5行8列的
    		for(int i=1;i<6;i++){
    			for(int j=1;j<9;j++){
    				System.out.print("*");
    			}
    			System.out.println();
    		}
    		*/
    		/*
    		随着我的需求不断改变,我们每次都要把这个代码写一遍
    		太麻烦,我们发现需求不断改变只是行和列的值变化了,
    		代码本省没有发生变化,所以我们就需要改进一下。
    		这个代码就是一个打印图形的代码。
    		所以我们可以用方法来改进代码。
    		*/	
    		//单独调用
    		printStar(8,15);
    		//输出调用
    		//错误: 此处不允许使用 '空' 类型
    		//System.out.println(printStar(8,15));
    		//赋值调用
    		//错误: 非法的表达式开始
    		//void v = printStar(8,15);
    	}
    	
    	/*
    	写一个打印*图的方法,2个确定:
    		返回值类型:空  这里使用void  (看mian方法就知道了)
    		参数:int h  int l
    	*/
    	public static void printStar(int h,int l){
    		for(int i=1;i<=h;i++){
    			for(int j=1;j<=l;j++){
    				System.out.print("*");
    			}
    			System.out.println();
    		}
    	}
    }
    

    练习1:

    • 键盘输入行和列,输出对应图形
    import java.util.Scanner;
    class FangFa{
    	public static void main(String[] args){
    		Scanner sc = new Scanner(System.in);
    		System.out.println("请输入两个数字:");
    		int a = sc.nextInt();
    		int b = sc.nextInt();
    		
    		printStar(a,b);   //调用打印方法
    	}
    	
    	//打印*的方法实现
    	public static void printStar(int a, int b){
    		for(int i = 1; i <= a; i++){
    			for(int j = 1; j <= b; j++){
    				System.out.print("*");
    			}
    			System.out.println();
    		}
    	}
    }
    

    练习2:

    • 键盘输入一个数x(1-9),输出对应的xx乘法表
    import java.util.Scanner;
    class FangFa{
    	public static void main(String[] args){
    		
    		Scanner sc = new Scanner(System.in);
    		System.out.println("请输入一个数字:");
    		int a = sc.nextInt();
    		printCheng(a);   //调用打印方法
    	}
    	
    	//打印乘法表的方法实现
    	public static void printCheng(int a){
    		for(int i = 1; i <= a; i++){
    			for(int j = 1; j <= i; j++){
    				System.out.print(j+"*"+i+"="+j*i+"\t");
    			}
    			System.out.println();
    		}
    	}
    }
    

    5,方法的重载

    • 方法重载的概述
      在一个类中,允许存在一个以上的同名方法,只要他们的参数个数或者参数类型不同即可。
    • 特点:
      和返回值无关,只看名字和参数
    /*
    随着我的需求不断改变,我们对应提供了很多个方法
    但是他们的名字都不一样。
    我们之前也要求过,起名字要  见名知意
    但是现在很明显其实没有知意
    怎么办?
    针对这样的情况:方法的功能类似,参数列表不同的情况
     为了 见名知意 java是允许这些方法的名字一样
    这种情况有一个专业的叫法---方法的重载
    
    方法重载:在同一个类中 方法名相同,参数列表不同,和返回值无关。
    	的这种现象。
    参数列表不同:
    	参数的个数不同
    	参数的类型不同	
    */
    import java.util.Scanner;
    class Demo{
    	public static void main(String[] args){
    		//jvm会根据不同的参数调用不同的方法
    		//System.out.println(sum(2,3));
    		//System.out.println(sum(2.0,5));
    		float f = 3.5F;
    		System.out.println(sum(f,3.0));
    		//System.out.println(sum(2,3,4));
    	}
    	
    	//写一个求2个数据之和的方法
    	public static int sum(int a,int b){
    		System.out.println("2个int");
    		return a+b;
    	}
    	
    	//写一个求3个数据之和的方法
    	public static int sum(int a,int b,int c){
    		System.out.println("3个int");
    		return a+b+c;
    	}
    	
    	//写一个求4个数据之和的方法
    	public static int sum(int a,int b,int c,int d){
    		System.out.println("4个int");
    		return a+b+c+d;
    	}
    	
    	//写一个求2个double类型的数据之和
    	public static double sum(double a,double b){
    		System.out.println("2个double");
    		return a+b;
    	}
    	//错误: 已在类 Demo4定义了方法 sum(double,double)
    	//public static double sum(double a,double b){
    	//	return a+b;
    	//}
    	public static double sum(float a,double b){
    		System.out.println("1个double,1个float");
    		return a+b;
    	}
    }
    

    -练习:

    • 比较2个数是否相等,参数分别是2个byte,2个short,2个int,2个long
    class Demo{
    	public static void main(String[] args){
    		byte b1 = 3;
    		byte b2 = 4;
    		System.out.println(isSame(b1,b2));
    		
    		short b3 = 3;
    		short b4 = 4;
    		System.out.println(isSame(b3,b4));
    
    		int b5 = 3;
    		int b6 = 4;
    		System.out.println(isSame(b5,b6));
    
    		long b7 = 3;
    		long b8 = 4;
    		System.out.println(isSame(b7,b8));
    	}
    	
    	public static boolean isSame(byte a,byte b){
    		System.out.println("byte");
    		return a==b;
    	}
    	
    	public static boolean isSame(short a,short b){
    		System.out.println("short");
    		return a==b;
    	}
    	
    	public static boolean isSame(int a,int b){
    		System.out.println("int");
    		return a==b;
    	}
    	
    	public static boolean isSame(long a,long b){
    		System.out.println("long");
    		return a==b;
    	}
    }
    
    展开全文
  • 我正在尝试从Java中的单独类中调用方法,但它似乎不起作用,或者我做错了什么.我想要实现的是将RaceEvent类中的Race方法调用到我的主程序中(检查主程序中的注释).这是课程:import java.util.Random;public class ...
  • 织梦dedecms默认搜索结果页面不支持搜索结果总数的调用,没有这样标签,但有时候我们需要在搜索结果页单独显示搜索结果条数,所以我们就得自己通过修改文件来实现了。  首先我们需要找到搜索页面调用的代码...
  • 如何从单独的线程(不是主线程)调用它。#1 热门回答(107 赞)创建一个实现Runnable接口类。将你想要运行代码放在run()方法中 - 这是你必须编写的方法,以符合Runnable接口。在你"主"线程中,创建一个...
  • 慕森王创建一个实现该Runnable接口类。将要运行代码放在run()方法中-这是必须遵循Runnable...start告诉JVM做魔术来创建一个新线程,然后run在该新线程中调用的方法。public class MyRunnable implements Run...
  • 方法的调用

    2021-01-03 23:07:36
    注意:此前学习的方法,返回值类型固定写为void,这种方法只能够单独调用, 不能进行打印调或者赋值调用。 public class Demo02MethodDefine { public static void main(String[] args){ sum(10,20); System.out....
  • 单独调用使用ueditor上传控件配置方法如下: 一、首先,下载uedtior最新版本,我使用是jsp版本,对于单独使用它上传图片功能,么有版本区别; 二、将uedtior放在你项目根目录下; 三、引入ueditor...
  • {cms:channellist id='item' condition='1=id' limit='1'} {$item.title} {/cms:channellist} condition里1=id意思是栏目ID为1
  • 嗯……不确定这是否可行,但如果你在一个单独的线程上运行,怎么会在Java中抓取真正的调用类名(理想情况下也是方法名)?我想将类名称卸载到一个单独的线程(以便在我每秒执行100次日志记录操作时不阻止UI线程).例如...
  • 各位小伙伴们,大家好,在上面一篇文章中提到了方法的定义,现在小编要讲的是方法的调用,有三种调用格式。单独调用:方法名称(参数);为了方便大家的理解,小编就先粘代码,我们定义一个方法,求矩形的面积。public...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,181
精华内容 2,072
关键字:

方法的单独调用