Java基础 - 面向对象 - 类方法传参
调用方法时可以给该方法传递一个或多个值,传给方法的值叫实参,在方法内部,接收实参的变量叫做形参,形参的声明语法与变量的声明语法一样。形参只在方法内部有效。
Java中方法的参数主要有3种,分别为值参数、引用参数和不定长参数
值参数
值参数表明实参与形参之间按值传递,当使用值参数的方法被调用时,编译器为形参分别存储单元,然后将对应的实参的值复制到形参中,由于是值类型的传递方式,所以在方法中对值类型的形参的修改并不会影响实参
package mingri.chapter_6;
public class Book {
public static void main(String[] args) {
Book book = new Book();
int shelf = 30;
int box = 40;
System.out.println("把书架上的书全部放进箱子后,箱子里一共有"
+ book.add(shelf, box) + "本书。\n明细如下:书架上"
+ shelf + "本书,箱子里原有" + box + "本书"
);
}
private int add(int shelf, int box) {
box += shelf;
return box;
}
}
引用参数
如果在给方法传递参数时,参数的类型是数组或者其他引用类型,在方法中对参数的修改会反应到原有的数组或者其他引用类型上,这种类型的方法参数被称之为引用参数
package mingri.chapter_6;
public class ExchangeRate {
public static void main(String[] args) {
ExchangeRate rate = new ExchangeRate();
double[] denomination = {1, 10, 100}; // 定义一个一维数组,用来存储纸币面额
// 输出三种面值的美元金额
System.out.println("美元:");
for (int i = 0; i < denomination.length; i++) {
System.out.println(denomination[i] + "美元 ");
}
// 传入一个引用参数
rate.chage(denomination);
// 输出与三种面值的美元等值的人民币
System.out.println("\n人民币:");
for (int i = 0; i < denomination.length; i++) {
System.out.println(denomination[i] + "元");
}
}
public void chage(double[] i) {
// 接收的引用参数,修改引用参数中的值后,会改变传入进来的引用参数
for (int i1 = 0; i1 < i.length; i1++) {
i[i1] = i[i1] * 6.903;
}
}
}
不定长参数
声明方法时,如果有若干个相同类型的参数,可以定义为不定长参数
package mingri.chapter_6;
public class demo {
public static void main(String[] args) {
demo dm = new demo();
int result = dm.add(20, 30, 40, 50);
System.out.println("result -->" + result);
}
int add(int... x) {
int result = 0;
for (int i = 0; i < x.length; i++) {
result += x[i];
}
return result;
}
}
Java基础 - 面向对象 - 类方法传参的更多相关文章
- Java基础-面向对象第一特性之封装(Encapsulation)
Java基础-面向对象第一特性之封装(Encapsulation) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.理解什么是面向过程和面向对象 面向过程与面向对象都是我们编程中 ...
- java基础面向对象之类与对象
java基础面向对象之类与对象 2017-01-14 1.面向对象的基本概念 以一种组建化的形式进行代码设计 1)在面向对象程序设计中包含有如下几种特性 •封装性:保护内部结构的安全性 •继承性:在已 ...
- Java基础-面向对象第三大特性之多态(polymorphism)
Java基础-面向对象第三大特性之多态(polymorphism) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.多态概述 多态是继封装,继承之后,面向对象的第三大特性,多态的 ...
- Java基础-面向对象第二特征之继承(Inheritance)
Java基础-面向对象第二特征之继承(Inheritance) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.继承的概述 在现实生活中,继承一般指的是子女继承父辈的财产.在程序 ...
- 第二十七节:Java基础面向对象-静态,单例模式,继承详情知识点
前言 Java基础面向对象-静态,单例模式,继承详情知识点.静态-static关键字,static变量,静态代码块,代码块(不加静态),对象创建过程,单例模式,继承. 静态-static关键字 // ...
- JAVA(一)JAVA基础/面向对象基础/高级面向对象
成鹏致远 | lcw.cnblog.com |2014-01-23 JAVA基础 1.开发环境搭建 JAVA程序的执行流程 JAVA命令->要使用一个*.class文件(类文件)->通过c ...
- JAVA基础-面向对象05
一.面向对象的引入 解决问题的时候,首先要会分析思路,这个思路就是我们生活中解决一个问题的方法步骤: 有了思路之后,再把思路使用java代码来解决: 但是 计算总分的需求变了 分析:原来在一个程序中, ...
- 原来你是这样的JAVA[02]-包、传参、构造器
一.包(package) 在java程序中,一个java源文件称为编译单元,以.java后缀命名.编译单元内可以有一个public类,类名必须与文件名相同.注意:每个编译单元只能有一个public类. ...
- python基础:函数传参、全局变量、局部变量、内置函数、匿名函数、递归、os模块、time模块
---恢复内容开始--- 一.函数相关: 1.1位置参数: ef hello(name,sex,county='china'): pass #hello('hh','nv') #位置参数.默认参数 1 ...
随机推荐
- 点滴积累【other】---Windows 7 IIS (HTTP Error 500.21 - Internal Server Error)解决方案(转载)
此文来自:http://blog626.blog.163.com/blog/static/105610732201051591450870/ 搭建IIS时出现如下错误: HTTP Error 500. ...
- 点滴积累【C#】---验证码,ajax提交
效果: 思路: 借用ashx文件创建四位验证,首先生成四位随机数字.然后创建画布,再将创建好的验证码存入session,然后前台进行button按钮将文本框中的值进行ajax请求到后台,和sessio ...
- JavaSE中日期处理
一.java中日期类之间的关系: 其中: 1):java.sql.Date.java.sql.Time和java.sql.Timestamp这三个类是专门和数据库打交道的,它们都是java.util. ...
- linux学习笔记13--命令head和tail
head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾. 1.命令格式: hea ...
- Quotations中页面弹出的问题
- 飞思卡尔烧写工具mfgtools的使用
MFGTool是飞思卡尔提供的烧写工具,使用起来非常方便.但是,在使用MFGTool有几点是需要注意的,否则就会在烧写过程中遇到一些问题: 1.在使用MFGTool前,文件cfg.ini 和 UICf ...
- Java与.NET机制比较分析
一.概述 不管是什么语言开发的web应用程序,都是在解决一个问题,那就是用户输入url怎么把对应的页面响应出来,如何通过url映射到响应的类,由于自己做asp.net的时间也不短了,还算是对asp.n ...
- vim -- 查找和替换
%s/foo/bar/g 在所有行中寻找‘foo’,并且用‘bar’替换 :s/foo/bar/g 在当前行寻找‘foo’,并且用‘foo’替换 :%s/foo/bar/gc 将每一个‘foo',并用 ...
- css 禅意花园 笔记
1. FOUC(Flash Of Unstyled Content) 现象( 在某些情况下,IE加载网页时会出现短暂的CSS样式失效. a: 只发生在Windows上的 IE (5.0版本以上) b ...
- 常见中文字体在CSS中的Unicode编码(宋体:\5B8B\4F53)
对于一个从事网页设计(也常说成DIV+CSS)的朋友来说,可能会遇到过这样的问题,就是在CSS里像这样设置某对象的字体:font-family:1.5em/1.75,’黑体’,Arial; 结果有些时 ...