一、方法

1、语法格式

修饰符  返回值类型 方法名(形参列表){

方法体

}

2、返回值类型

返回值类型可以时:1、void(无返回值)

2、8大基本数据类型中的任意一种

3、引用数据类型中的任意一一种

怎么判断是否需要返回值?

结合需求,该返回就返回

return:指的是返回一个值给调用方并且结束方法

3、方法签名

方法签名 = 方法名 + 形参列表

怎么判断方法是否一样?

判断方法签名是否一样

怎么判断方法签名是否一样?

1、方法名是否相同,如果相同,则看形参列表

2、看形参列表中的数据类型

3、看形参列表中的形参个数

4、看形参列表中的形参顺序

4、方法重载(overload)

指的是方法名相同,参数列表不同的方法。

1、必须在同一个类中;

2、方法名相同,形参列表不同;

3、与修饰符、返回值类型无关

简而言之,方法重载就是为了减少程序员的记忆量

5、怎么去调用方法

1. 类名.方法名()   前提:你的方法有被static所修饰

2. 对象名.方法名() 前提:你的方法没有被static所修饰

3. 直接方法名()    前提: 调用方和被调用方,都在同一个类中,要么都被static所修饰,要么都没有被static所修饰

调用方法的注意事项: 调用方法的时候,实参列表与形参列表必须一致(参数个数,参数类型,参数类型顺序)

二、数组

1、动态创建数组

语法格式:数组中数据类型[] 变量名 = new 数组中数据类型[数组的长度];

例:int[] arr = new int[5];

也可以这样写:数组中数据类型[] 变量名;

变量名 = new 数组中数据类型[数组的长度];

例:int[] arr ;

arr = new int[5];

2、静态创建数组

语法格式:数组中数据类型[] 变量名= new 数组中数据类型[]{1,3,2};或者

数组中数据类型[] 变量名= []{1,3,2};

注意:静态数组的创建必须立即赋值,不能像下面这样写:

例:数组中数据类型[] 变量名;

变量名= []{1,3,2};   这是错误的!!!

3.数组的赋值

arr[0] = 33;    把33装进索引为0的盒子中

4.数组的取值异常

1、System.out.println(arr[0]);    取出数组索引为0的盒子中的值

2、数组特点:数组一旦创建成功,它的长度是不能更改的

3、数组:它是引用数据类型,默认值为null

4、数组常见的错误:

1.数组脚标越界

原因:

1. 索引为负数,或者超过了最大索引

2.空指针异常

原因:

  1. 调用方法的时候,或者调用属性的时候,对象的值已经为null了

三、堆栈内存图分析数组,方法

得出两个重要结论:

1、方法调用时其实是将实参的值复制一份赋值给形参;

引用数据类型才有堆栈内存图,基本数据类型没有,因为基本数据类型复制并赋值给形参的就是具体数据,而引用数据类型复制并赋值给形参的是内存地址,实参,形参操作的时同一个对象。

初窥Java之五的更多相关文章

  1. 初窥Java之六

    一.二维数组 1.动态创建 数组中元素类型[] 数组名 = new 数组中元素类型[]; 例如:int[][] arr = new int[二维数组的长度][一维数组的长度]: Int[][] arr ...

  2. 初窥Java之三

    一.基本数据类型之浮点型 每个数据它自身都有一个默认的类型,如果直接打印小数,默认类型就为double类型: float和double表示小数的精度不是特别的高,如果对于精确度要求非常的高,我们 都使 ...

  3. 初窥Java之二

    一.java中存在三大注释: 第一大注释:  单行注释   一般用于信息量比较少的地方 第二大注释:  多行注释   一般用于信息比较多的地方 多行注释注意事项:1.多行注释的开始行与结尾行不能写注释 ...

  4. 初窥Java之一

    一.常用的dos命令 打开命令提示符窗口的方式: ① win + R --> 输入cmd --> 回车 ② 开始 --> 搜索程序和文件的框中输入  cmd  --> 回车 ③ ...

  5. 初窥Java之四

    一.条件判断之if判断 语法格式:if(结果为布尔类型的结果值){ 功能执行语句; }else if(结果为布尔类型的结果值){ 功能执行语句; } ....{ }else{ 功能执行语句: } 注意 ...

  6. Java发送邮件初窥

    一.背景 最近朋友的公司有用到这个功能,之前对这一块也不是很熟悉,就和他一起解决出现的异常的同时,也初窥一下使用Apache Common Email组件进行邮件发送. 二.Java发送邮件的注意事项 ...

  7. Hadoop学习笔记(9) ——源码初窥

    Hadoop学习笔记(9) ——源码初窥 之前我们把Hadoop算是入了门,下载的源码,写了HelloWorld,简要分析了其编程要点,然后也编了个较复杂的示例.接下来其实就有两条路可走了,一条是继续 ...

  8. 初窥ElasticSearch

    初窥ElasticSearch 官网上面的,不知道讲的是什么.. youtube上面有一个start with,内容是在windows以下跑这个elastic search,然后用一个fidler工具 ...

  9. 李洪强iOS开发之函数式 编程初窥

    函数式 编程初窥   最近在学习Erlang和Python.Erlang是完全的函数式编程语言,Python语言是面向对象的语言,但是它的语法引入了大量的函数式编程思想.越研究越觉得函数式的编程思路可 ...

随机推荐

  1. 解决Javascript中$(window).resize()多次执行(转)

    https://www.cnblogs.com/shuilangyizu/p/6816756.html 有些时候,我们需要在浏览器窗口发生变化的时候,动态的执行一些操作,比如做自适应页面时的适配.这个 ...

  2. mongo数据库的各种查询语句示例

    左边是mongodb查询语句,右边是sql语句.对照着用,挺方便. db.users.find() select * from users db.users.find({"age" ...

  3. ionic2 子页面隐藏去掉底部tabs导航,子页面全占满显示方法(至今为止发现的最靠谱的方法)

    项目中遇到 tabs 字页面 可以用以下代码隐藏的方式: imports: [ BrowserModule, // IonicModule.forRoot(MyApp), HttpModule, Io ...

  4. 开源框架 ImageLoader +ListView+GridView+RecyclerView 浅解

    下载地址 链接:https://pan.baidu.com/s/1ebz99pcuvHg2bODgeOtSbg 提取码:ia39 一.导入jar包或者添加依赖 jar包地址 导入jar包:将下载的ja ...

  5. extjs中store的reload事件异步问题解决

    转载自:http://blog.sina.com.cn/s/blog_8f8b7fc10100zd75.html store0.reload({params:{start:0, limit:10}}) ...

  6. 五.Bash Shell编程基础入门实战

    知识回顾 运行脚本我们一般用sh 不用单独去加执行权限 OLDBOY=10只适用当前环境 局部变量 export OLDBOY把它设置为临时的环境变量应为已经=10了所以不用export OLDBOY ...

  7. HTML中body元素的属性

    body元素的属性 属性 描述 text 设定页面文字颜色 bgcolor 设定页面背景颜色 background 设定页面背景图像 bgproperties 设定页面的背景图像为固定状态(不随页面的 ...

  8. jQuery之CSS选择器的处理机制

    <!DOCTYPE html><html lang="en"><head> <meta charset="utf-8" ...

  9. AI-URL注册器

    官方文档地址:https://www.django-rest-framework.org/tutorial/quickstart/#serializers #url生成器生成四个url,就可以访问关于 ...

  10. python列表1

    List (列表)List(列表) 是 Python 中使用最 频繁的数据类 型.列表 可以 完成大 多数集 合类 的数据 结构 实现. 列表中 元素 的类型 可以 不相同 ,它支 持数 字,字 符串 ...