文档章节

Java方法重载

李茂冉
 李茂冉
发布于 2016/05/20 00:43
字数 630
阅读 16
收藏 0

多态性是面向对象程序设计的重要特性之一。

多态性分为两种:静态多态和动态多态。

方法重载用于实现静态多态性。

##方法重载overload

###方法重载规则:

  1. 方法名相同
  2. 方法的参数类型、个数至少有一项不相同
  3. 方法的返回类型可以不相同
  4. 方法的修饰符可以不相同

###方法重载的原则:

  • 只有对不同的数据完成基本相同的任务的方法才应重载

###重载的优点是:

  1. 不必对相同的操作使用不同的方法名
  2. 有助于更轻松地理解和调试代码
  3. 更易于维护代码

##构造方法

  1. 构造方法负责对象的初始化工作,为实例变量赋初始值
  2. 构造方法必须满足以下语法规则: (1).方法名必须与类名相同 (2).不要声明返回类型
  3. 当类中没有定义构造方法时将使用默认构造方法

###重载构造方法

一个类可以有多个构造方法

重载的构造方法可以以不同方式初始化类对象

要重载构造方法,我们应提供不同的参数列表(参数个数不同或者参数类型不同)

###默认构造方法

默认构造方法是没有参数的构造方法,可分为两种:

  1. 隐含的默认构造方法
  2. 程序显式定义的默认构造方法

##this关键字

当局部变量与实例变量同名时,局部变量将隐藏同名的实例变量

可以用关键字this来区分局部变量和实例变量

##static关键字

static关键字可以用来修饰

  • 成员变量
  • 成员方法
  • 代码块

被static所修饰的成员变量和成员方法表明该成员归某个类所有,它不依赖于类的特定实例,被类的所有实例所共享

##static方法

静态方法可访问内容限制:

  • 不能使用this关键字
  • 不能直接访问所属类的实例变量和实例方法
  • 可以直接访问所属类的静态变量和静态方法

###static代码块

  • 静态代码块不存在任何方法体中
  • 类的静态代码块用于初始化类,如:给类的静态变量赋初值
  • 静态代码块中可访问内容的限制与静态方法相同

© 著作权归作者所有

共有 人打赏支持
上一篇: Java数据类型
下一篇: JSP page对象
李茂冉
粉丝 6
博文 103
码字总数 59256
作品 0
东城
高级程序员
私信 提问
04-《深度拆解JVM》之 JVM是如何执行方法调用的?(上)

一、问题引入 前不久在写代码的时候,郑雨迪老师不小心踩到一个可变长参数的坑。它就是由于可变长参数方法的重载造成的。(注:官方文档建议避免重载可变长参数方法,见 [1] 的最后一段。) ...

飞鱼说编程
2018/09/18
0
0
Java 已老,Kotlin 或将取而代之!

点击上方“CSDN”,选择“置顶公众号” 关键时刻,第一时间送达! Java已经成为历史。它无法发展成现代语言,同时保证向后兼容性。但它为我们带来了最好的JVM生态系统,并引导了许多优秀语言...

CSDN
2018/05/12
0
0
java方法重载重写原理学习的简单总结

概述 根据查看过的 深入理解JVM 和 郑雨迪的教程,对java中方法重载的原理进行一个大致总结 具体总结 在JAVA中,多态主要体现为方法的重载和重写。 方法重载:同一个类中,方法名相同,参数列...

娑婆丶
02/18
0
0
javafx 的 webview中js调用java重载方法

如题 javafx使用webview控件的时候 需要用js调用java代码 但是java代码中如果有重载方法 (方法名相同 方法参数不通 )就会被覆盖 无法全部调用 js参数是可变长度的 如何在javafx类中 得到完...

衷于栖
2015/01/18
1K
0
java 泛型-擦除erasure

类型擦除(type erasure)。 Java中的泛型基本上都是在编译器这个层次来实现的。在生成的Java字节代码中是不包含泛型中的类型信息的。使用泛型的时候加上的类型参数,会被编译器在编译的时候...

110hxl
2014/02/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

维信小程序button样式重写

一、小程序button默认按钮样式重写 以primary按钮为例: /**重写默认按钮样式**/button[type='primary'] {background: red;padding: 5px 0px;line-height: 30px;font-size: 14px;......

tianma3798
33分钟前
1
0
使用async和await封装vue中的http请求

实际需求中经常会碰到想异步请求代码写的像同步一样简洁,解决回调地狱,这是最近封装的一个。 // import qs from 'qs';import axios from 'axios'import utils from './util'import { To......

chinahufei
40分钟前
1
1
python中类方法和静态方法区别

面相对象程序设计中,类方法和静态方法是经常用到的两个术语。 逻辑上讲:类方法是只能由类名调用;静态方法可以由类名或对象名进行调用。 在C++中,静态方法与类方法逻辑上是等价的,只有一...

Linux就该这么学
45分钟前
2
0
5G是现实的狂欢还是骨感?

“4G改变生活,5G改变社会。” 这一句充满无限遐想的口号,因2019年世界移动大会(MWC2019)召开带来的产业最前沿动态,让观察者、消费者产生梦想照进现实的感觉。OPPO、小米、华为、三星、LG、...

linuxCool
49分钟前
2
0
Codis的dashboard异常退出后,重新启动报异常的处理方法

dashboard是codis的核心组建,所有集群相关的操作都是通过dashboard进行的。如果dashboard出现宕机、服务被杀掉等极端情况,则会导致codis集群无法使用。 1)codis集群维护时,需要关闭dashb...

linxyz
50分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部