day87(6.7函数的重载)

2023-10-27

1、函数的重载:
函数的重载就是在同一个类中允许同时存在一个以上的同名函数,只要它们的参数个数或类型不同即可。 
§   在同一个类中可以定义多个 同名 方法—方法名重载(overload)
public class PrintStream{
public void print(int i) {……}
public void print(float f) {……}
public void print(String s) {……}
}
§  重载方法的参数列表必须不同
§  重载方法的返回值类型可以相同,也可以不同
§  调用时根据方法的参数类型来区别。
     print(3);print(1.2f);print(“hello!”);
(PS:其实这里说的函数的重载,但是,平常我们也可以是方法的重载,它可以起到的功能是只需要记忆一个方法名(函数名),就可以服务于多种功能。方法名,参数表的不同就构成了重载,返回值类型是否相同不作为重载的依据。也就是说判断有没有没重载主要就是参数这一点)
public class AddUtil{
  public static int add(int a,int b){
           return a+b;
}
public static double add(double a,double b){
 return a+b;
}
public static double add (int a,double b){
 return a+b;
}
public static void main (String args){
 add(3,5);
 add(1.0,2.0);
 add(1,5.0);
 add(5.0,1);
}
}
使用重载的优点是方便了程序员(用户)的使用,开发者只需要记忆一个方法,通过传递不同的方式调用 相对应的代码逻辑。
练习程序:
(1)编写程序,定义三个重载方法并调用。方法名为mOL。
三个方法分别接收一个int参数、两个int参数、一个字符串参数。分别执行平方运算并输出结果,相乘并输出结果,输出字符CallMOL串信息。
 
 
定义三个重载方法max,第一个方法求两个int值中的最大值,第二个方法求两个double值中的最大值,第三个方法求三个double值中的最大值,并分别调用三个方法。
2、this
果然越来觉得,看书与视频最大的不同在于,视频是别人通过自己的理解再形象的把自己的理解表现自己的理解表现出来的一种
 
视频上,用这样的关系的形容this与成员方法之间的关系,而我自己的看书对this方法的理解是要到父类中的方法时,可以用this.
两个都不能说有错,但是明显,这里更深刻些。这是书本,所不能达到的。但只看视频,会先为入主,以后对某个概念的看法,会局限于同一个点。
this(name, age, null);这句和
this.name=name;
this.age=age 
this.birthDate(一个变量,具体是什么看情况的)=null
三句的效果是一样的。
练习:定义Person类,有4个属性:String name; int age; String school; String major
(1)定义Person类,有4个属性:String name; int age; String school; String major,
(2)定义Person类的3个构造方法:
第一个构造方法Person(String n, int a)设置类的
name和age属性;
第二个构造方法Person(String n, int a, String s)设置类的name,  
        age 和school属性;
第三个构造方法Person(String n, int a, String s, String m)设置类的name, age ,school和major属性;
(3)在main方法中分别调用不同的构造方法创建的对象,并输出其属性值
public class Person {
private String name;
private int age;
private String school;
private String major;
public Person(String n,int a){
this.name=name;
this.age=age;
}
public Person(String n,int a,String s){
this.name=name;
this.age=age;
this.school=school;
}
public Person(String n,int a,String s,String m){
this.name=name;
this.age=age;
this.school=school;
this.major=major;
}
public   Person(int i) {//注意调用构造函数的时候不能用static
// TODO Auto-generated method stub
new Person( "张三",24,"宾夕法尼亚大学莫尔学院","计算机");
     
}
}
3、关于昨天C/C++垃圾回收机制的问题,因为java内存回收工作由虚拟机做好,而C++是直译程序(直接编译成汇编),而Java等脚本是解释执行程序(PS:虽然现在的JVM也提供了部分的部直译功能),所以总结一下,也就是说,C++的内存是编写者自己管理的,而Java的内存是由虚拟机管理的。虽然C++要手动。(其实我还是有个疑问,和析构器有什么关系呢)
 
 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

day87(6.7函数的重载) 的相关文章

  • 【电气专业知识问答】问:电动机本体温度异常升高如何处理?

    电气专业知识问答 问 电动机本体温度异常升高如何处理 答 1 起因 电动机本体温度异常可能是由于过载 电压低导致过电流 电压高引起铁耗过大 线圈短路或接地 电缆一相断线或接触不良 由于灰尘而导致接触不良等原因 2 处理 应开启备用电动机 停
  • ADXL345测量角度

    include
  • react--umi, 根据权限展示菜单,完成页面权限分配,以及路由鉴权

    umi框架 prolayout布局 access设置菜单权限 initialState全局初始化数据 配合使用 根据后端返回的权限信息 完成菜单的不同的权限的不同展示 1 umi 配合 patlayout 布局 实现根据配置的路由展示菜单栏
  • cocos2d-x2.2.3和android平台环境的搭建

    最开始学习cocos2dx 大多数人可能是被复杂的环境配置过程搞死的 尤其是和Android平台搭建这一块 会把人搞疯 而且各个版本也会有不少的差异 我也是参考了很多才在自己的电脑里搭建好的 仅供参考 是基于cocos2d x2 2 3版本
  • Unity 方向键输入 Input.GetAxis() 和Input.GetAxisRaw(),Vertical 与Horizontal

    GetAxis 是个方法 需要传参数 参数为string类型 参数如下 一 触屏类 1 Mouse X 鼠标沿着屏幕X移动时触发 2 Mouse Y 鼠标沿着屏幕Y移动时触发 3 Mouse ScrollWheel 当鼠标滚动轮滚动时触发
  • ML算法——最优化

    文章目录 数学预备知识 1 最优化问题 2 凸优化 2 1 梯度下降 2 2 牛顿法 2 3 阻尼牛顿法 2 4 拟牛顿法 2 5 总结 数学预备知识 1 最优化问题 最优化问题指的是在给定条件下 找到一个目标函数的最优解 即找到能够使目标
  • ubuntu 开启自启

    开机启动界面 安装chrome浏览器 1 2 wget https dl google com linux direct google chrome stable current amd64 deb sudo apt install goo
  • apache的ab命令做压力测试

    1 最基本的关心两个选项 c n 例 ab c 100 n 10000 http 127 0 0 1 index php c 100 即 每次并发100个 n 10000 即 共发送10000个请求 2 测试结果分析 junjie2 log
  • 图像阈值(opencv_python学习)

    图像阈值 简单阈值 自适应阈值 Otsu二值化 简单阈值 cv threshold 函数是 OpenCV 中用于应用阈值处理的函数 具体的语法如下 ret dst cv2 threshold src thresh maxval type d
  • 前言

    程序猿一枚 喜欢写作 喜欢分享 喜欢音乐 喜欢摄影 爱历史 临近毕业 由于学校教的知识太浅且太散 实在不适合应用于工作中 最近这段时间去了个培训班学习嵌入式开发 学成归来 虽然身边的同窗都纷纷投入社会了 但我还是想要缓一缓 利用一段时间来总
  • 美团 2023年春招 JAVA后端开发方向

    分糖 时间限制 3000MS 内存限制 589824KB 题目描述 小美因乐于助人的突出表现获得了者师的嘉奖 老师允许小美从一堆n个编号分别为1 2 n的糖果中选择任意多个糖果作为奖励 每种编号的果各一个 但为了防止小美一次吃太多糖果有害身
  • Delphi实现Windows的气泡提示样式

    其实也不复杂 主要使用到shellAPI下的TNotifyIconData这个结构体 typedef struct NOTIFYICONDATA DWORD cbSize 结构体的大小 以字节为单位 HWND hWnd 窗口的句柄 UINT
  • Python字符串、集合练习_密码校验

    校验密码是否合法 1 输入一个密码要求长度在5 10位 len 2 密码里面必须包含 大写字母 小写字母和数字 字符串方法或者集合 3 最多输入5次 for 用字符串方法实现 for i in range 5 passwd input 请输
  • 数据库分库分表的应用场景及方法分析

    数据库分库分表的应用场景及方法分析 一 数据库经常面临的问题 二 解决方法的思量 三 急剧膨胀的业务及数据量的影响 以电商领域为例 订单库将订单相关的数据 订单销售 订单售后 订单任务处理等数据 都放在一个数据库 中 对于订单的销售数据 性
  • ArrayList和LinkedList的区别

    ArrayList 基于动态数组 连续内存存储 适合下标访问 随机访问 因为里面存的元素的类型是一致的 所以内存长度是固定的 所以很快就能找到具体位置的元素 扩容机制 因为数组长度固定 超出长度存数据时需要新建数组 然后将老数组的数据拷贝到
  • 第一个只出现一次的字符

    在一个字符串 1 lt 字符串长度 lt 10000 全部由字母组成 中找到第一个只出现一次的字符 并返回它的位置 public class Solution public int FirstNotRepeatingChar String
  • 【torch报错】OSError: [WinError 127] The specified procedure could not be found. Error loading

    导入torch等库的时候报错OSError WinError 127 The specified procedure could not be found Error loading E anaconda3 envs py3 10 lib
  • mybatis讲解(2)之动态SQL的运用

    目录 经典面试题 1 mybatis动态sql 2 模糊查询 3种方式 3 查询返回结果集 总结 前言 在我上篇已经学习了Mybatis简介以及如何去连接数据库 具有增删改查的方法 那么我们今天来学习Mybatis的第二节关于1 mybat
  • 涉密服务器监控系统,涉密场所检查时有哪些注意事项?

    对举办涉密会议和活动的场所以及保密要害部门部位的环境进行检查 是保密技术检查的重要内容 涉密场所保密检查主要包括 门禁和监控系统的检查 异常无线信号检查 涉密场所周边环境的安全性检查 涉密场所隐藏电子设备的检查 隐藏摄像设备检查 电源的检查

随机推荐

  • 计算机算法设计与分析期末试题,算法设计与分析期末考试试卷(D卷)(含答案).doc...

    算法设计与分析期末考试试卷 D卷 一 选择题 0分 每题分 D A n2 2 2n的渐进表达式上界函数是O 2n B n2 2 2n的渐进表达式下界函数是 2n C logn3的渐进表达式上界函数是O logn D logn3的渐进表达式下
  • setter方法的内部实现【不要在init和dealloc函数中使用accessor】

    Objective C 2 0 增加了dot syntax 用于简单地调用成员变量的accessor 相当于java的getter和setter 因为正常情况下 写一个accessor对于初学者来说 还是挺容易犯错的 比如有一个NSStri
  • el-table多选+搜索

    一 问题描述 表格数据是一次性从后端获取到了全部的数据 可前端假分页 在模糊检索表格数据时 因为el table的数据源data发生了变化 重新触发了 selection change事件 此时如果仅仅是在 selection change
  • 27黑马QT笔记之QPixmap和QBitmap的区别

    27黑马QT笔记之QPixmap和QBitmap的区别 前提 首先我们先要了解什么是透明和不透明的图片 1 透明是指显示后与背景颜色一样的 2 不透明就是有自己的颜色 与背景颜色不一样 看下图 前者就是透明的 后者是背景是白色的 是不透明的
  • 详解Python中的三元运算

    详解Python中的三元运算 什么是三元运算符 在大部分编程语言中都有三目运算 也称三元运算 Python语言从Python2 5版本开始也引入了三元运算符 在Python中 三元运算也称为条件表达式 语法如下 true expressio
  • 文件后缀和MIME

    id 后缀名 MIME 0 gif image gif 1 jpg image jpeg 2 png image png 3 bmp image bmp 4 psd application octet stream 5 ico image
  • 锂电池保护板的分类有哪些?

    对于锂电池保护板的认识很多人也是一知半解 并不清楚锂电池保护板具有哪些分类结构 对于如何选择锂电池保护板有些朋友不知道从哪方面着手 那么今天专业生产锂电池保护的锂盾电子带着大家去了解下保护板的分类到底怎样去区分的 保护板可以分为三种种类 三
  • [tensorflow]从Keras加载、保存模型、显示模型权重

    import tensorflow as tf 构建模型 并加载imagenet预训练权重 base model tf keras applications InceptionV3 include top False weights ima
  • python怎么画折线图

    要在 Python 中绘制折线图 你可以使用 matplotlib 库中的 plot 函数 首先 你需要安装 matplotlib 库 这可以使用 pip 包管理器来完成 在终端或命令提示符中输入以下命令 pip install matpl
  • 毛坯房装修

    86平的房子带上家具大概在8 12万左右 硬装 即地面 墙面这些地方瓷砖 水电等装修s 软装 即家具 门框 窗帘等木材 布艺类 全屋定制一般是指 在设计上整体搭配设计 根据整体的设计来定做家具 全屋定制 2 5万 电器 2 5万 5万 窗帘
  • vuex是什么

    vuex是什么 一 vuex是什么 什么是vuex 一 vuex是什么 1 Vuex 是一个专为 Vue js 应用程序开发的状态管理模式 它由五部分组成 分别是 state actions mutations getters module
  • Electron官方实验工具Electron Fiddle

    如果开发者想验证一段简短的代码是否可以在Electron框架内正常运行 那么自己创建个Electron项目 再搞个开发调试环境 就太麻烦了 Electron官方团队为开发者提供了一个更快捷的创建项目并进行试验的工具 Electron Fid
  • 豪华气派!这些院校的图书馆也太美了!

    博尔赫斯曾经说过 我心里一直都在暗暗设想 天堂应该是图书馆的模样 图书馆作为校园里的重要建筑 可以说是大学的门面 很多同学在择校时也会重点关注学校的图书馆 把它作为了解学校底蕴的通道和入口 今天我们就来看看各大高校的神仙图书馆吧 北京大学图
  • ffmpeg vscode debug编译错误【已解决】

    1 make no targets Stop 修改方式 make j N 这个N查看本机有多少个核 问题查找参考链接 https github com openresty openresty issues 22 2 the EAI MEMO
  • 线性回归和逻辑回归(LR)

    回归就是输出值是连续的而不是离散的 如果是离散值 就是分类问题 1 线性回归 1 定义 给定数据集D x1 y1 x2 y2 线性回归尝试学习到一个线性模型 尽可能地输出正确标记 线性回归无非就是在N维空间中找一个形式像直线方程一样的函数来
  • 如何用3个月零基础入门网络安全?

    一 自学网络安全学习的误区和陷阱1 不要试图先成为一名程序员 以编程为基础的学习 再开始学习 我在之前的回答中 我都一再强调不要以编程为基础再开始学习网络安全 一般来说 学习编程不但学习周期长 而且实际向安全过渡后可用到的关键知识并不多 一
  • React实现自定义双向数据流

    ng是双向数据流 VM双向数据绑定 而react与vue都是单向数据流 model层的数据流向view层 今天 我们就尝试自定义实现双向数据流 案例 组件中通过监听input内容变化 进而赋值 class Bar extends React
  • windows下使用cmake+mingw配置makefile(一)

    1 下载Cmake 并配置环境变量 下载链接 https cmake org download 环境变量略 2 生成Makefile 1 新建 hello 文件夹 在hello中创建hello c测试程序 mkdir hello cd C
  • Git 在AS上的操作总结+图解(仓库创建,分支的创建,切换,更新,合并,版本回退)

    简述 本文主要是按顺序进行描述的 创建仓库 创建项目 关联并提交 创建分支 将分支合并到主分支上去 版本的回滚 分支的更新 以及一些注意事项 使用AS创建一个项目 1 创建本地仓库 就会在选中的目录下面创建一个git仓库 关联本地库成功之后
  • day87(6.7函数的重载)

    1 函数的重载 函数的重载就是在同一个类中允许同时存在一个以上的同名函数 只要它们的参数个数或类型不同即可 在同一个类中可以定义多个 同名 方法 方法名重载 overload public class PrintStream public