2019-10-17-21:18:33


方法

定义格式:
  public static void 方法名称() {
    方法体
  }

完整格式:

  修饰符  返回值类型  方法名称(参数类型  参数名称,...){

  方法体

  return  返回值;

  }

  修饰符:现阶段的固定写法,public. static
  返回值类型:也就是方法最终产生的数据结果是什么类型
  方法名称:方法的名字,规则和变量一样,小驼峰
  参数类型:进入方法的数据是什么类型
  参数名称:进入方法的数据对应的变量名称
  PS: 参数如果有多个,使用逗号进行分隔
  方法体:方法需要做的事情,若干行代码
  return:两个作用,第一停止当前方法,第二将后面的返回值还给调用处
  返回值:也就是方法执行后最终产生的数据结果
  注意: return后面的“返回值”,必须和方法名称前面的“返回值类型”,保持对应。

调用格式:
  1.单独调用:方法名称(参数);

  2.打印调用:System.out.println(方法名称(参数));

  3.赋值调用:数据类型  变量名称  =  方法名称(参数);

注意事项:
  1.方法定义的先后顺序无所谓。
  2.方法定义必须是挨着的,不能在一个方法的内部定义另外一个方法。
  3.方法定义之后,自己不会执行的;如果希望执行,一定要进行方法的调用。

使用方法注意事项

  1.方法应该定义在类当中,但是不能在方法当中再定义方法。不能嵌套。
  2.方法定义的前后顺序无所谓。
  3.方法定义之后不会执行,如果希望执行,一定要调用。有单独调用、打印调用、赋值调用。
  4. 如果方法有返回值,那么必须写上"return返回值;”,不能没有。
  5. return后面的返回值数据,必须和方法的返回值类型,对应起来。
  6.对于一个void没有返回值的方法,不能写return后面的返回值,只能写return自己。
  7.对于void方法当中最后一行的return可以省略不写。
  8. 一个方法当中可以有多个return语句,但是必须保证同时只有一 个会被执行到,两个return不能连写.

有参数和无参数的区别

  1.有参数。小括号当中有内容,当一个方法需要一些数据条件,才能完成任务的时候,就是有参数。
  例如两个数字相加,必须知道两个数字是各自多少,才能相加。
  

  2.无参数:小括号当中留空。-一个方法不需要任何数据条件,自己就能独立完成任务,就是无参数。
  例如定义一个方法,打印固定10次Helloworld.

方法重载

  方法的重载(Overload) :多个方法的名称一样,但是参数列表不一样。
  优点:只需要记住唯一个方法名称, 就可以实现类似的多个功能。

  方法重载与下列因素相关:
    1.参数个数不同
    2.参数类型木同,
    3.参数的多类型顺序不同

  方法重载与下列因素无关:

    1.与参数的名称无关

    2.与方法的返回值类型无关

数组

  概念:数组是一种容器,可以同时存放多个数据值

  特点:
    1.数组是一种引用数据类型
    2.数组当中的多个数据,类型必须统一
    3.数组的长度在程序运行期间不可改变
  数组的初始化:在内存当中创建-一个数组,并且向其中赋予一些默认值。
  两种常见的初始化方式:
    1.动态初始化(指定长度):在创建数组的时候,直接指定数组当中的数据元素个数
    2.静态初始化(指定内容):在创建数组的时候,不指定数据个数多少,而是直接将具体的数据内容进行指定
  动态初始化数组的格式:
    数据类型[]  数组名称  =  new  数据类型[数组长度];
  解析含义:
    左侧数据类型:也就是数组当中保存的数据,全都是统一 的什么类型
    左侧的中括号:代表我是一个数组
    左侧数组名称:给数组取一个名字
    右侧的new: 代表创建数组的动作
    右侧数据类型:必须和左边的数据类型保持一致
    右侧中括号的长度:也就是数组当中,到底可以保存多少个数据,是一个int数字

  静态初始化

    格式:数据类型[]  数组名称  =  new  数据类型[]  {元素1,元素2...};

    省略格式:数据类型[]  数组名称  =  {元素1,元素2,...};

  使用建议

    如果不确定数组当中的具体内容,使用动态初始化,否则,已经确定乐乐具体的内容,用静态初始化

  注意:

    1.直接打印数组名称得到的是数组对应的内存地址哈希值

    2.访问二数组元素的格式:数组名称[索引值]

    3.索引值是从0开始,一直到“数组的长度-1”为止

  数组长度

    格式:数组名称.length

  一个方法可以有0、1、多个参数:但是只能有e或者1个返回值,不能有多个返回值。
  如果希望一个方法当中产生了多个结果数据进行返回,怎么办?
  解决方案:使用一个数组作为返回值类型即可。
  任何数据类型都能作为方法的参数类型,或者返回值类型。
  数组作为方法的参数,传递进去的其实是数组的地址值。
  数组作为方法的返回值,返回的其实也是数组的地址值。

Java内存划分

  


最开始学Python学到面向对象就转学Java,前面学的比较快,但是到面向对象就开始变难了,学的有点揪心,难受啊

Java之路---Day03的更多相关文章

  1. Java之路——名词解释(一)

    一.开篇 许多人在初接触Java的时候,都会被各种Java的英文缩写名词给弄得头晕脑胀.看一个技术,内容里又会有一堆其他的技术名词,看了半天不知所云.尝试去查一下这些名词的解释,除了非常学术性的解释之 ...

  2. Java之路——敬JAVA初学者(作者:MoMo)

    作为一名大四的毕业生,大学三年过,有得有失.作为一个喜欢编程,喜欢JAVA的人,自学其实是一件美事,很有意思的事.要是能再找个女朋友一起学.嘿嘿,就不枉在大学走了一遭啊!    要离开学校了,还是想留 ...

  3. Java之路——环境配置与编译运行

    本文大纲 一.开篇 二.JDK下载 三.JDK安装 四.环境配置 五.初识Java编译 六.Java与Javac 七.第一个Java程序 八.总结 九.参考资料 一.开篇 通过对之前Java之路的了解 ...

  4. Java之路 ——初识Eclipse

    零.大纲 一.前言 二.获取Eclipse 三.运行Eclipse 四.创建及运行第一个Java Project 五.界面介绍 六.如何调试 七.获取插件 八.Eclipse 快捷键 九.总结 一.前 ...

  5. 2017-2018-1 JAVA实验站 冲刺 day03

    2017-2018-1 JAVA实验站 冲刺 day03 各个成员今日完成的任务 小组成员 今日工作 完成进度 张韵琪 写博客.进行工作总结 100% 齐力锋 部分按钮图片.对按钮图片进行ps 100 ...

  6. 转行自学 Java 之路的纪念册

    前言: 最近在重读<小狗钱钱>,我对其中的"成功日记"概念特别深刻,偶尔也会记一记“成功日记”. 想了想人生走找到今天,阶段性“成功日记”有没有呢? 有的!几年前的一篇 ...

  7. 是什么让我走上Java之路?

    选择方向,很多人都为根据自己的兴趣爱好和自己的能力所长而作出选择.那么是什么让我走上Java之路? 整个高三我有两门课程没有听过课,一门是数学,一门是物理.当时候物理没有听课的原因很简单,我有一本&l ...

  8. 我的Java之路

    前言: 之前在学习python,刚开始的时候跟多数小白一样学习一些基础的知识,比如数据类型,用法,基本的语言结构,学了一段时间实在是学习不下去了,真是太TMD的无聊了,很多方法都记不住,也不知道学了这 ...

  9. Java之路——初识Eclipse

    零.大纲 一.前言 二.获取Eclipse 三.运行Eclipse 四.创建及运行第一个Java Project 五.界面介绍 六.如何调试 七.获取插件 八.Eclipse 快捷键 九.总结 一.前 ...

随机推荐

  1. 在 Mac、Linux、Windows 下Go交叉编译

    Golang 支持交叉编译,在一个平台上生成另一个平台的可执行程序,最近使用了一下,非常好用,这里备忘一下. Mac 下编译 Linux 和 Windows 64位可执行程序 CGO_ENABLED= ...

  2. 声源定位之2精读《sound localization based on phase difference enhancement using deep neuarl networks》

    2.1.1 题目与摘要 1.为什么要增强IPD? The phase differences between the discrete Fourier transform (DFT) coeffici ...

  3. 从太空到地球某个位置的轨迹录像制作 | Earth Zoom in/out Tutorial (Record Video)

    视频教程:Google Earth - Earth Zoom in/out Tutorial (Record Video) 下载google earth 在search里输入你想要去的地名 zoom ...

  4. Openresty与Tengine

    Tengine官方网站:http://tengine.taobao.org/index_cn.html OpenResty官方网站:http://openresty.org/ Openresty和Te ...

  5. Mac下 VirtualBox(VBox) 的 Centos6/7 共享文件夹配置

    vbox 安装虚拟机请移步这里. https://blog.csdn.net/a47846800/article/details/88847466 前期准备: 远程登录 centos 系统, 分边执行 ...

  6. aardio类的例子

    论坛里面相关资料太少,这里贴一下 库需要在工程的lib目录下,在ide里面就是用户库目录,比如 my_lib namespace my_lib{ import console class MyLibC ...

  7. Java分布式:分布式服务框架——ZooKeeper

    Java分布式:ZooKeeper——核心概念 ZooKeeper 统一配置管理 统一命名服务 分布式锁

  8. 使用vue搭建应用一入门

    1.准备 安装nodejs,配置环境变量 安装了nodejs,也就安装了npm 安装webpack npm install webpack -g 安装vue脚手架项目初始化工具 vue-cli npm ...

  9. [ARM-Linux开发]Linux下加载.ko驱动模块的两种方法:insmod与modprobe

    假设要加载的驱动程序模块名为SHT21.ko 加载驱动模块 方法一:  进入SHT21.ko驱动模块文件所在的目录,然后直接  insmod SHT21.ko  即可 方法二:  将SHT21.ko文 ...

  10. Python监听键盘和鼠标事件

    我们可以利用windows提供的api函数来实现对系统键盘事件和鼠标事件的监听,主要利用的是SetWindowsHookEx函数,这个函数可以允许调用者传入一个钩子函数也叫回调函数,当指定的事件发生时 ...