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_ ...
随机推荐
- Linux的Docker安装教程
Docker下载的官方文档地址:https://docs.docker.com/engine/install/centos/ 卸载旧版本 sudo yum remove docker \ docker ...
- 超耐心地毯式分析,来试试这道看似简单但暗藏玄机的Promise顺序执行题
壹 ❀ 引 就在昨天,与朋友聊到JS基础时,她突然想起之前在面试时,遇到了一道难以理解的Promise执行顺序题.由于我之前专门写过手写promise的文章,对于部分原理也还算了解,出于兴趣我便要了这 ...
- asp.net swagger的使用
最近要从其他系统获取一些数据,准备写个接口让别人把数据塞进来,顺便学习一下如何使用Swagger. 参考大神的教程:asp.net https://mp.weixin.qq.com/s/SHNNQo ...
- Flutter和iOS混编详解
前言 下面的内容是最近在使用Flutter和我们自己项目进行混编时候的一些总结以及自己踩的一些坑,处理完了就顺便把整个过程以及一些我们可能需要注意的点全都梳理出来,希望对有需要的小伙伴有点帮助,也方便 ...
- 项目:Six Sigma
六西格玛管理(Six Sigma Management)是20世纪80年代末首先在美国摩托罗拉公司发展起来的一种新型管理方式.推行六西格玛管理就是通过设计和监控过程,将可能的失误减少到最低限度,从而使 ...
- Servlet——HTTP状态 405 - 方法不允许
问题描述: 使用Servlet调用doGet方法时报错: 此URL不支持Http方法GET 源代码: 解决方案: 删除super.doGet(req, resp);
- 个人冲刺(三)——体温上报app(一阶段)
任务:完成了app第二页面的页面布局 activity_second.xml <?xml version="1.0" encoding="utf-8"?& ...
- [2018-03-04] 利用 Settings Sync 插件同步 VS Code 设置
VS Code 已原生支持设置同步,本文仅备份记录 [2018-03-04] 早就听说这个插件了,今天用了一下,确实挺方便的.通过把配置文件创建为 Gist 上来实现了 VS Code 设置的同步,下 ...
- vue项目|在弹窗中引入uchart图表子组件不显示
为了解决uchart作为子组件在主组件里引用但不显示的情况,(同样适用于弹窗之中)目前有三种方法. 1-解决方式 1>如果你使用的uchart子组件是从官方拿的例子:进入到uchart子组件将o ...
- 论文阅读 Dynamic Network Embedding by Modeling Triadic Closure Process
3 Dynamic Network Embedding by Modeling Triadic Closure Process link:https://scholar.google.com.sg/s ...