目录

一.方法的 重载(OverLoad)

一.方法的重写

二.可变参数

三.作用域

四.构造方法 / 构造器

五.对象创建的流程分析

六.this 关键字


一.方法的 重载(OverLoad)

1)基本介绍:
                     a:java 中允许同一个类中,多个同名方法的存在,但要求 形参列表不一致。
                     b:重载的好处:
                            -1.减轻了 起名的麻烦:
                            -2.减轻了 记名的麻烦:

2)方法重载的注意事项 与 细节:
                     a:方法名称:必须相同
                     b:参数列表:必须不同(参数类型 或 个数 或 顺序,至少有一样不同,参数名无要求)
                     c:返回类型:无要求

一.方法的重写

1)发生在父子类中,方法名.参数列表必须相同,返回值范围小于等于父类,抛出的异 常范围小于等于父类,
                   访问修饰符范围大于等于父类;如果父类方法访问修饰符为 private 则子类就不能重写该方法。

二.可变参数

1)基本概念:
                     a:java 允许将 同一个类中,多个同名同功能,但参数个数不同的方法,封装成一个方法。

2)基本语法:
                     a:访问修饰符 返回类型 方法名(数据类型... 形参名){.....

3)使用细节:
                     a:可变参数的实参,可传入 0个 或 任意多个 参数。
                     b:可变参数的实参可以为数组。(也可以直接传入一个数组)
                     c:可变参数的本质就是数组。
                     d:可变参数 可以和 普通类型的参数一起,放在形参列表;但必须保证可变参数在最后。
                     e:一个形参列表中,只能出现一个可变参数。

4)入门案例:

三.作用域

1)基本使用:
                     a:在 java 编程中,主要的变量就是 属性(成员变量) 和 局部变量。
                     b:我们说的局部变量,一般是指在成员方法中 定义的变量。(例如:Cat 类的 cry)
                     c:java 中作用域的分类:
                            -1.全局变量:也就是属性,作用域分为整个类体。
                            -2.局部变量:也就是除了属性之外的 其他变量,作用域为:定义它的代码块中。
                     d:全局变量可以不赋值,直接使用,因为有默认值。
                           局部变量必须赋值后,才能使用,因为没有默认值。

2)使用细节:
                     a:属性 和 局部变量 可以重名,访问时遵循就近原则。
                     b:在 同一个 作用域中,两个变量,不能重名。
                     c:生命周期:
                            -1.属性 生长周期较长:伴随着对象的创建而创建,伴随着对象的死亡 而死亡。
                            -2.局部变量生命周期较短:伴随着他的代码块的执行而创建,伴随着代码块结束而死亡。
                     d:作用域范围不同:
                            -1.全局变量:可以被 本类使用,或其他类使用。(通过对象调用)
                            -2.局部变量:只能在对应的方法中使用。
                     e:修饰符不同:
                            -1.全局变量 / 属性可以加修饰符:( public int a = 0; )
                            -2.局部变量不可以加 修饰符:

四.构造方法 / 构造器

1)基本介绍:
                     a:构造方法 又叫 构造器,是类的一种特殊的方法,它的主要作用是完成对新对象的初始化。(不是创建)
                     b:特点:
                            -1.方法名 和 类名相同。
                            -2.没有返回值。
                            -3.在创建对象时,系统会自动的调用该类的构造器,完成对 对象的初始化。

2)基本语法:
                        

3)注意事项 和 使用细节 汇总:
                     a:一个类可以定义多个不同的构造器,即:构造器重载。
                     b:构造器有修饰符,可以为默认的。
                     c:构造器名称 和 类名 必须相同。
                     d:参数列表 和 成员方法 一样的规则。
                     e:构造器没有返回值。
                     f:构造器 是完成对象的初始化,并不是创建对象
                     g:在 创建对象时,系统自动的 调用该类的构造方法。构造器的调用,由系统完成。
                     h:如果没有定义构造器,系统自动定义默认无参构造器;若指定类,则没有默认了。

五.对象创建的流程分析

1)流程分析:

                     a:方法区中,先加载 Person 类信息(Person.class),类只加载一次。
                     b:在 堆中,为对象分配空间,会得到一个内存地址。
                     c:完成对象初始化。(默认初始化 赋默认值、显示初始化 、构造器初始化)
                     d:对象在 堆中的地址,返回给 p。p是对象的引用 或叫 对象名。

六.this 关键字

1)java 虚拟机会给每个对象分配 隐藏属性 this,代表当前对象。(哪个对象调用,this 就代表哪个对象)

2)this 的注意事项 和 使用细节:
                     a:this 关键字 可以用来访问本类的属性、方法、构造器。
                     b:this 用于区分,当前类的 属性 和 局部变量。
                     c:访问 成员方法的语法:this.方法名称(参数列表)。
                     d:访问构造器语法:this(参数列表):注意:只能在构造器 调用另外一个构造器。
                     e:this 不能在 类定义的 外部使用,只能在 类定义的方法中使用。

韩顺平—基础—重载、构造器、对象(P228 - P263)相关推荐

  1. Linux入门笔记-尚硅谷韩顺平-基础篇实操篇

    文章目录 课程导论 基础篇 Linux入门 Linux介绍 Linux和Unix的关系 Linux和Windows比较 基础篇 Linux的目录结构 基本介绍 具体的目录结构 实操篇 vi和vim的使 ...

  2. Java基础易忘重点内容笔记【附B站韩顺平老师课程链接】

    B站课程链接:https://www.bilibili.com/video/BV1fh411y7R8?spm_id_from=333.999.0.0 1. 文档注释 用于对Java方法的注释,可据此生 ...

  3. Java学习(java基础)-韩顺平老师

    一.简单介绍 1.jdk.jre 2.Java代码规范 a.类.方法的注释,要以javadoc的方式来写 /** *@author:楠小弟 *@version:1.0 */ public class ...

  4. 韩顺平 2021零基础学Java 学习笔记(2)(自用)

    目录 第 10 章 面向对象编程(高级部分) 第 11 章 枚举和注解 第 12 章 异常-Exception 第 13 章 常用类 第 10 章 面向对象编程(高级部分) 10.1 类变量和类方法 ...

  5. Java笔记(韩顺平Java基础7-8章)

    Java学习笔记(第7章 P191-P263)(第8章 P264-P360) 第7章 面向对象编程(基础部分) 类与对象 成员方法 成员方法传参机制(!!!) 方法递归调用(!!!) 方法重载(Ove ...

  6. 韩顺平java基础——坦克大战(含有线程、I\O流的讲解)

    写在最前边: 研究生一枚,为后端实习和未来工作打基础.无意间发现韩顺平老师的课程,细心细致,讲课和吴恩达老师一样,都是保姆式讲解,各种基础知识都会补充,爱了. 韩顺平老师课程地址:https://ww ...

  7. Java笔记(韩顺平Java基础12-14章)

    Java学习笔记(第12章 P444-P459)(第13章P460-P498)(第14章P499-P553) 第12章 异常-Exception 异常介绍 编译异常 异常处理 try-catch异常处 ...

  8. MySQL数据库基础01 韩顺平 自学笔记

    MySQL数据库基础 数据库简单原理图 连接Mysql 启动和关闭mysql服务 连接Mysql指令 数据库三层结构 数据在数据库中的存储方式 SQL语句的分类 简单通过Java操作Mysql数据库 ...

  9. 【韩顺平】Java线程(基础)知识点总结

    文章目录 1.线程概念 1.1程序 1.2进程 1.3线程 2.其他相关概念 2.1并发 2.2并行 2.3单线程 2.4多线程 3.创建线程的两种方法 3.1继承Thread类,重写run方法 3. ...

最新文章

  1. Jquery Ajax时 error处理 之 parsererror
  2. 转载-致IT同仁 —— IT人士常犯的17个职场错误
  3. 打不死的redis集群
  4. HDU-4313-Matrix(离线并查集)
  5. 苹果自动驾驶测试车近距离实拍,头顶新添传感器和硬件
  6. php josnp_浅析php中jsonp的跨域实例
  7. c语言解析sql语句_解析SQL语句比解析类C语言更麻烦?
  8. centos7按报错dracut
  9. 拥有2000家门店,他如何晋升为服装界的新宠? 1
  10. 2017华为笔试题3
  11. matlab通信系统4g,matlab_通信原理.ppt
  12. Please use torch.load with map_location=torch.device(‘cpu‘),If you are running on a CPU-only machine
  13. 配置与管理Ubuntu 21.10
  14. 补锅之校内测(桶哥系列)
  15. 大类资产配置的基本方法
  16. 墨天轮访谈 | 百度云邱学达:GaiaDB如何解决云上场景的业务需求?
  17. **Maven web项目报错**-web.xml is missing and <failOnMissingWebXml> is set to true 原因:生成的maven web项目webap
  18. BSCI、SA8000、SEDEXSMETA三项社会责任验厂有何区别?
  19. python的关系运算符可以连续使用_在Python中,关系运算符可以连续使用,例如15等价于13and35....
  20. 【大数据】9大实战项目解决你所有烦恼(写论文、找工作)

热门文章

  1. vb2010中ComboBox的item用法
  2. 远程连接服务器显示:发生身份验证错误 要求的函数不受支持
  3. 首次提交项目报错push to origin/master was rejected解决方案
  4. 数据库课程设计作业报告
  5. Hadoop作业提交分析(五)
  6. tensorflow2.0 新特性 + kaggle练习
  7. PCB阻抗设计及Polar Si9000 PCB阻抗计算软件的使用
  8. Android 通过okhttp + jsoup 爬虫爬取网页小说
  9. Java项目:SSM员工考勤管理系统
  10. 小米/红米手机,刷入第三方recovery(红米5 plus为例)