java--方法/debug
一、方法的定义
1、什么是方法
- 方法是将具体独立功能的代码块组织称为一个整体,使其具有特殊功能的代码集
注意:
- 方法必须先创建后使用,该过程为方法定义;
- 方法创建后并不是直接运行的,需要手动十一后执行,该过程称之为方法调用
- 方法可以被反复的调用,减少代码的重复性,便于程序的维护和优化
2、方法的通用格式:
//main函数 main方法 主方法 主函数
public static 返回值类型 方法名(参数){
//方法体
return 数据;
}
分析:
public static :[修饰符]可以省略 不写表示当前所有修饰词为默认的;
返回值类型:方法操作完毕之后返回的数据的数据类型 void:无返回值类型,一般没有数据返回,不写return
方法名:调用方法时候使用的标识
参数列表:由数据类型和变量名组成,多个参数之间用逗号隔开
{}:方法的逻辑体
3、定义参数和返回值
- 在方法调用时,会将实际的参数值传递给放啊的参数变量,必须保证参数类型和个数符合方法 的声明;
- 方法在使用时,可以返回一个数据,称之为返回值;
- 方法在定义时必须指定返回值的类型
- 有返回值时,写具体的返回值的类型;无返回值时,写void
二、方法的调用:
1、方法调用:
格式:方法名();
注意:方法必须先定义后调用,否则程序将报错;
2、方法练习:
public class MethodDemo1 {
public static void main(String[] args) {
MaxNumber();
}
public static void MaxNumber(){
int[] arr={23,67};
int max=arr[0];
for(int i=1;i<arr.length;i++){
if ((arr[i]>max)){
max=arr[i];
}
}
System.out.println(max);
}
}
3、带参数方法的定义和调用
3.1 格式:
public static void 方法名(参数){....}
public static void 方法名(数据类型 变量名){....}(单个参数)
例如:
public static void show(int number){....}
public static void 方法名(数据类型 变量名1,数据类型 变量名2.........){....}(多个参数)
例如:
public static void show(int number1,int number2,.........){....}
注意:
- 方法定义时,参数中的数据类型与变量名都不能缺少,缺少任意一个程序将报错;
- 方法定义时,多个参数之间使用逗号分隔
3.2带参数方法调用:
格式:方法名(参数);
格式(单个参数):方法名(变量名/常量值);
例如:show(6);
格式(多个参数):方法名(变量名1/常量值1,变量名2/常量值2......);
例如:getMax(5,6);
注意:方法调用时,参数的数量和类型必须与方法定义中的设置相匹配,否则程序将报错
public class MethodDemo2 {
public static void main(String[] args) {
isEvenNumber(19);
int number=10;
isEvenNumber(number);
}
public static void isEvenNumber(int a){
//a=8;
if (a%2==0) {
System.out.println(true);
}else{
System.out.println(false);
}
}
}
3.3 形参和实参:
形参:方法定义中的参数;
实参:方法调用中的参数,等同于使用变量或变量
4、带返回值方法的定义和调用
4.1 有返回值时,返回具体的返回值结果
public static double sum2(double a,int b) {//一定要声明合适的返回值的类型
return a + b;//返回方法的返回值
}
4.2 返回值类型为void时,可以使用return
public static void testfor() {
for (int i = 0; i <= 1000; i++) {
if(i == 999) {
return;//立即结束方法,返回被调处
}
System.out.println(i);
}
}
注意:方法调用时return后面的返回值与方法定义上的数据类型要匹配,否则程序将报错
4.3 带返回值方法调用
格式1:数据类型 变量名=方法名(参数);
范例:boolean flsg=isEvenNumber(5);
注意:
方法的返回值通常会使用变量接收,否则该返回值将无意义。
5、方法的注意事项:
- 方法不能嵌套定义;
- void表示无返回值,可以省略return,也可以单独的书写return,后面不加数据;
6、方法重载:
6.1 重载的概述:
方法重载是指同一个类中定义的多个方法之间的关系,满足下列条件的多个方法相互构成重载;
- 多个方法在同一个类中;
- 多个方法具有相同的方法名;
- 多个方法的参数不相同,类型不同或者数量不同;
6.2 方法重载的特点:
- 重载仅对应方法的定义,与方法的调用无关,调用方法参照标准格式;
- 重载仅针对同一个傀儡种方法的名称与参数进行识别,与返回值无关,换句话说,不能通过返回值来判断两个方法是否构成重载
7、方法参数传递:
对于基本数据类型的参数,形式参数的改变,不影响实际参数的值
对于引用类型 的参数,形式参数的改变,影响实际参数的值
Debug:
1、debug概述:
Debug:是供程序员使用的程序调试工具,它可以用于查看程序的执行流程,也可以用于追踪程序执行过程来调试程序。
1.2 debug操作流程:
Dubug调试,又称为断点调试,断点其实是一个标记,告诉我们从哪里开始查看
如何加断点;
如何运行加了断点的程序;
看哪里;
点哪里;
如何删除断点;
1.2.1 如何加断点
选择要设置断点的代码行,在行号的区域后面单击鼠标左键即可
1.2.2 如何运行加了断点的程序
在代码区域右键Debug执行
1.2.3 看哪里
看Debugger窗口
1.2.4 点哪里
点Step into[F7]这个箭头,也可以直接按F7
点stop结束
java--方法/debug的更多相关文章
- HAL中通过JNI调用java方法【转】
转载请注明本文出处:http://www.cnblogs.com/xl19862005 作者:Xandy 由于工作的需要,最近一直在研究HAL.JNI.Java方法之间互调的问题,并做了如下一些记录和 ...
- JNI C反射调用java方法
前面记录了调用C的学习笔记,现在来记录一下C反射调用Java的笔记.JNI开发学习之调用C方法 Android开发中调用一个类中没有公开的方法,可以进行反射调用,而JNI开发中C调用java的方法也是 ...
- Android Studio NDK开发-JNI调用Java方法
相对于NDK来说SDK里面有更多API可以调用,有时候我们在做NDK开发的时候,需要在JNI直接Java中的方法和变量,比如callback,系统信息等.... 如何在JNI中调用Java方法呢?就需 ...
- 六、Java方法
Java方法 何为方法 System.out.println(),那么它是什么呢? System是一个类,out是一个对象,println()是一个方法 Java方法是语句的集合,它们在一起执行的 ...
- C++调用JAVA方法详解
C++调用JAVA方法详解 博客分类: 本文主要参考http://tech.ccidnet.com/art/1081/20050413/237901_1.html 上的文章. C++ ...
- JNI中C调用Java方法
背景需求 我们需要在JNI的C代码调用Java代码.实现原理:使用JNI提供的反射借口来反射得到Java方法,进行调用. JNI关键方法讲解. 1. 在同一个类中,调用其他方法 JNIEXPORT v ...
- Atitit java方法引用(Method References) 与c#委托与脚本语言js的函数指针
Atitit java方法引用(Method References) 与c#委托与脚本语言js的函数指针 1.1. java方法引用(Method References) 与c#委托与脚本语言js ...
- C#调用Java方法(详细实例)
C#可以直接引用C++的DLL和转换JAVA写好的程序.最近由于工作原因接触这方面比较多,根据实际需求,我们通过一个具体例子把一个JAVA方法转换成可以由C#直接调用的DLL C#调用c++ C#调用 ...
- Android C代码回调java方法
本文将讲述下列三种C代码回调java方法 1.c代码回调java空方法 2.c代码回调java int类型参数方法 3.c代码回调javaString类型参数方法 方法都差不多,先看c代码回调java ...
- oracle调用java方法的例子(下面所有代码都是在sql/plus中写)
在Oracle中调用Java程序,注意:java方法必须是static类型的,如果想在JAVA中使用system.out/err输出log. 需要在oracle 中执行"call dbms_ ...
随机推荐
- AQS源码阅读
简介 AQS 全程为 AbstractQueuedSynchronizer , 在 java.util.concurrent.locks包下的一个抽象类. 类的具体作用以及设计在开始类描述信息里面就有 ...
- Day 001:PAT练习--1091 N-自守数 (15 分)
体验了一阵子现代生活后,朕发现敲代码还是挺有意思的.所以从今天开始,小编秦始皇开始记录朕做PAT题目的过程辣,那话不多说,开始今天的题目了: 题目描述: 如果某个数 K 的平方乘以 N 以后, ...
- 为什么HttpContextAccessor要这么设计?
前言 周五在群里面有小伙伴问,ASP.NET Core这个HttpContextAccessor为什么改成了这个样子? 在印象中,这已经是第三次遇到有小伙伴问这个问题了,特意来写一篇记录,来回答一下这 ...
- MySQL常用数据类型及细节
目录 1 整数类型 1.1 可选属性 1.1.1 M 1.1.2 UNSIGNED 1.1.3 ZEROFILL 2 浮点类型 2.1 精度误差 3 定点数类型 3.1 数据精度说明 3.2 类型介绍 ...
- mybaitis查询 (数据库与实体类字段名不相同)
1.这是我的数据库字段名和实体类字段名 2.方法 方法一: 查询的结果标题 会跟实体类的属性一一匹配,一定要一致就算数据库字段和属性不一致,我们可以把查询结果设置一个别名,让别名=属性名 方法二:使用 ...
- 项目文章|DNA(羟)甲基化研究揭示铁离子依赖表观调控促进狼疮致病性T细胞分化|易基因
易基因(羟)甲基化DNA免疫共沉淀测序(h)MeDIP-seq研究成果见刊<Journal of Clinical Investigation> 2022年5月2日,中南大学湘雅二医院赵明 ...
- 设计并实现加法器类 Adder
学习内容:设计并实现加法器类 Adder 代码示例: package 实验三; import java.util.Scanner; public class Adder { private int n ...
- curl-URL请求
模拟HTTP请求,通过访问URL获取HTTP响应. 语法 curl [选项] 访问URL 选项 --connect-timeout SECONDS 设置最大请求时间. -C, --continue-a ...
- Vue基础篇 之 v-model 模拟
我们知道vue中 为简化表单输入 提供了v-model 的语法绑定 将 vue的属性和表单元素进行了双向绑定 大大简化了表单数据操作的数据绑定 那么v-model 是如何实现双向绑定的呢? 今天我们来 ...
- 儿童节,和 AI 一起通关 “超级马里奥兄弟”
摘要:六一儿童节,快来训练一款自己的游戏 AI,用代码让马里奥从大反派酷霸王的魔掌里救回桃花公主. 本文分享自华为云社区<儿童节,和 AI 一起通关 "超级马里奥兄弟"> ...