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_ ...
随机推荐
- docker容器的持久化存储:Volume
独立于docker容器的持久化存储: 法(1):自动将服务器文件夹挂载到容器内部文件夹/usr/share/nginx/html,这样只修改服务器文件夹下的内容即可对应修改容器内部文件夹的内容 将服务 ...
- Springboot中整合knife4j接口文档
在项目开发过程中,web项目的前后端分离开发,APP开发,需要由前端后端工程师共同定义接口,编写接口文档,之后大家都根据这个接口文档进行开发. 什么是knife4j 简单说knife4j就swagge ...
- 【面试普通人VS高手系列】死锁的发生原因和怎么避免
一个去阿里面试的小伙伴私信我说:今天被一个死锁的问题难到了. 平常我都特意看了死锁这块的内容,但是回答的时候就想不起来. 这里可能存在一个误区,认为技术是要靠记的. 大家可以想想,平时写代码的时候,这 ...
- 小干货:Linux 系统的备份恢复
点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! tar 命令 副本(本机备份整个系统,以后还原还是还原到 ...
- Red Hat牵头推进NVFS文件系统
开源Linux 长按二维码加关注~ 上一篇:Linux中几个正则表达式的用法 由 Red Hat 工程师牵头的团队,正在为 Linux/开源社区研究名为 NVFS 的文件系统.NVFS 的目标是成为像 ...
- wsgiref模块,动静态网页,jinja2模块,django
基于wsgiref模块搭建服务端 from wsgiref import simple_server def run(request, response): """ :p ...
- swagger在线api文档搭建指南,用于线上合适么?
在上一篇文章中,我们讲解了什么是 api,什么是 sdk: https://www.cnblogs.com/tanshaoshenghao/p/16217608.html 今天将来到我们万丈高楼平地起 ...
- 原创工具14Finger-全能web指纹识别与分享平台
14Finger 功能齐全的Web指纹扫描和分享平台,基于vue3+django前后端分离的web架构,并集成了长亭出品的rad爬虫的功能,内置了一万多条互联网开源的指纹信息. Github:http ...
- CAD图与互联网地图网页端相互叠加显示技术分析和实现
需求分析 之前相关的博文中介绍了如果在Web网页端展示CAD图形(唯杰地图云端图纸管理平台 https://vjmap.com/app/cloud),当一些CAD图纸有实际地理坐标位置时,如地形图等, ...
- Redis设计与实现2.1:数据库和事件
数据库和事件 这是<Redis设计与实现>系列的文章,系列导航:Redis设计与实现笔记 数据库 数据库的结构定义在 redis.h/redisServer 这个结构体中,这个结构体有许多 ...