Java方法总结
什么是方法
何谓方法
就是一个方法只完成一个功能,这样利于后期的扩展
例子:
public static void main(String[] args) {
System.out.println(add(1, 2));
}
public static int add(int a,int b){
return a+b;
}
方法的定义及调用
用来完成特定功能的代码片段
方法包含一个方法头和一个方法体
修饰符
返回值类型
方法名
参数类型
形式参数:
实参:
例:
public static void main(String[] args) {
//实际参数:实际调用传递给他的参数
System.out.println(add(1, 2));
}
//形式参数,用来定义作用的
public static int add(int a,int b){
return a+b;
}
方法体
public static void main(String[] args) {
int i = max(20, 20);
System.out.println(i);
}
public static int max(int a, int b) {
int result = 0;
if (a == b) {
System.out.println("两数字相等");
return 0;//终止方法
}
if (a > b) {
result = a;
} else {
result = b
}
return result;
}
方法重载
方法可以无限重名但是参数类型得不同
重载规则(面试笔试题)
方法名称必须相等
参数类别必须不同
方法的返回类型可以相等也可以不想等
仅仅返回类型不同不足以成为方法重载
public static int max(int a, int b) {
int result = 0;
if (a == b) {
System.out.println("两数字相等");
return 0;//终止方法
}
if (a > b) {
result = a;
} else {
result = b;
}
return result;
}
//重载
public static double max(double a, double b) {
double result = 0;
if (a == b) {
System.out.println("两数字相等");
return 0;//终止方法
}
if (a > b) {
result = a;
} else {
result = b;
}
return result;
}
命令行传参
可变参数
public static void main(String[] args) {
Demo03 demo03 = new Demo03();
demo03.test(1,2,3);
}
public void test(int...i){
System.out.println(i[0]);
System.out.println(i[1]);
System.out.println(i[2]);
}递归(笔试里面的高频问点)
A方法调用B方法,我们很容易理解
递归就是:A方法调用A方法,自己调自己
利用递归可以用简单的程序来解决一些复杂的问题。它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。
递归结构分为两部分:
a.递归头:什么时候不调自身方法。如果没有头,将陷入死循环
b. 递归体:什么时候需要调用自身方法
public static void main(String[] args) {
int f = f(5);
System.out.println(f);
}
//2!-------2*1
//3!-------3*2*1
public static int f(int n){
if (n==1){
return 1;
}else {
return n*f(n-1);
}
}
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_ ...
- Js调用Java方法并互相传参
Js通过PhoneGap调用Java方法并互相传参的. 一.JAVA代码 写一个类,该类继承自Plugin并重写execute方法. import org.json.JSONArray; import ...
- HAL中通过JNI调用java方法【转】
转载请注明本文出处:http://www.cnblogs.com/xl19862005 作者:Xandy 由于工作的需要,最近一直在研究HAL.JNI.Java方法之间互调的问题,并做了如下一些记录和 ...
- wrong number of arguments,java方法反射时数组参数的坑
java方法中只有一个参数是数组,反射的时候我们不能想当然的传歌数组进去,传数组进去的时候表示多个参数. 两个数组不是一个意思啊. 我们应该把数组转为objet,这样才表示一个参数. import j ...
- JAVA 方法或者类的注释快捷键
JAVA 方法或者类的注释快捷键 /*** 登录验证* @param 传入的* @return* @throws Exception*/这种注释效果 方法: 1.先敲“/”在敲两个**,然后回车 方法 ...
随机推荐
- 分享一个基于 netty 的 java 开源项目
1.简介 中微子代理(neutrino-proxy)是一个基于 netty 的.开源的 java 内网穿透项目.遵循 MIT 许可,因此您可以对它进行复制.修改.传播并用于任何个人或商业行为. 2.项 ...
- 上线项目之局域网上线软件使用-----phpStudy
上面的图片是phpStudy的软件截图.那么你在哪里会下到呢?链接: https://pan.baidu.com/s/1lvX9jY_K6gGkMOqo76p4nA 提取码: h1it 复制这段内容后 ...
- windows 2003系统安装
一.使用workstation创建虚拟机 二.系统安装 点击"Enter" 点击"F8" 点击"Enter" 如下图所示: 点击" ...
- centos 7编译安装mysql 5.7.20
1. 下载mysql 5.7.20源码包 wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.20.tar.gz 下载boost ...
- NC14326 Rails
NC14326 Rails 题目 题目描述 There is a famous railway station in PopPush City. Country there is incredibly ...
- hs-black 杂题选讲
[POI2011]OKR-Periodicity 考虑递归地构造,设 \(\text{solve(s)}\) 表示字典序最小的,\(\text{border}\) 集合和 \(S\) 的 \(\tex ...
- Linux查看内网服务器的出口IP
查看内网服务器的出口IPcurl ifconfig.me [root@vpnserver ~]# curl ifconfig.me111.10.100.100 [root@vpnserver ~]#
- 利用MATLAB仿真节点个数和节点通信半径与网络连通率的关系
一.目的 ①在不同节点个数的情况下,用Matlab拟合出连通率与通信半径的关系曲线. ②在不同节点通信半径的情况下,用Matlab拟合出连通率与节点个数的关系曲线. 二.方法描述 在1x1的单位矩形中 ...
- HashMap中的哈希函数分析
首先我们要知道,在理想情况下的哈希表中,哈希函数生成的哈希值是value在数组中的下标,其范围是分布于负无穷到正无穷的整个实整数轴的.而在现实情况下,是不可能存在这么大的一个数组的.接下来分析Hash ...
- java controller 异常捕获
package com.aiyusheng.framework.exception; import lombok.Data; /** * base异常类 * @author :cza * @date ...