社区
Java SE
帖子详情
static方法-----重载
sling2007
2011-04-17 05:15:46
Java方法执行的时候,分成编译时绑定和运行时绑定,
编译时绑定,比如final方法static方法会在编译时明确知道 调用的哪个方法。
而且构造方法是隐式的static方法。
运行时绑定则使得Java方法的运行具有多态性,分成重载和重写。
我的问题是:
经常会有一些static方法 出现重载的样子,构造函数出现重载的样子,那么这是多态吗?还是只是样子这样而已?
static方法是和类绑定的类方法,也就是和其它类无关的,那么static方法有重写吗?
...全文
307
5
打赏
收藏
static方法-----重载
Java方法执行的时候,分成编译时绑定和运行时绑定, 编译时绑定,比如final方法static方法会在编译时明确知道 调用的哪个方法。 而且构造方法是隐式的static方法。 运行时绑定则使得Java方法的运行具有多态性,分成重载和重写。 我的问题是: 经常会有一些static方法 出现重载的样子,构造函数出现重载的样子,那么这是多态吗?还是只是样子这样而已? static方法是和类绑定的类方法,也就是和其它类无关的,那么static方法有重写吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liuhuang007
2011-04-18
打赏
举报
回复
多态的基本概念是一个接口有不同的实现版本(方法)
包括重载和重写(覆盖)
重载是方法名一样,参数不一样
重写是通过继承覆盖父类的方法
》》经常会有一些static方法 出现重载的样子,构造函数出现重载的样子,那么这是多态吗?
这个是重载,也是多态(多态分为静态多态和动态多态)
》》static不能重写,原因参考
http://topic.csdn.net/u/20080319/13/fac93542-5cbf-45b6-bbb5-66ba0fac9956.html
sling2007
2011-04-18
打赏
举报
回复
解释的很好,
顶一下
dong_very_good
2011-04-17
打赏
举报
回复
重载是多态的一种,static方法不能重写
fafi09
2011-04-17
打赏
举报
回复
重载和重写是不一样的,重载是静态多分派,重写是动态单分派。重载是编译期就准备好的,重写是执行期的多态。重写才会构成多态。静态的方法或变量不属于某一个对象,编译期就已经准备好。
经常会有一些static方法 出现重载的样子,构造函数出现重载的样子,那么这是多态吗?
>>重载不是多态。
static方法是和类绑定的类方法,也就是和其它类无关的,那么static方法有重写吗?
>>重写的目的是构成多态,多态是执行期的。static重写没有意义,不构成多态,也不能称之为重写。
这是我的认识,请参考,欢迎批评指正。
龙四
2011-04-17
打赏
举报
回复
重载与多态没有一点关系
static方法不存在重写
【面试】Java
static
方法
能否被重写或
重载
“覆盖”只有在某
方法
是基类的接口的一部分时才会出现。即,必须能将一个对象向上转型为它的基本类型并调用相同的
方法
。 class
Static
Super{ public
static
void
static
Get() { System.out.println("
Static
Super
static
Get"); } public void dynamicG...
方法
的
重载
-----
-练习
方法
的
重载
-----
-练习
C++ ->
重载
类成员访问运算符( -> )可以被
重载
,但它较为麻烦。它被定义用于为一个类赋予"指针"行为。运算符 -> 必须是一个成员函数。如果使用了 -> 运算符,返回类型必须是指针或者是类的对象。 运算符 -> 通常与指针引用运算符 * 结合使用,用于实现"智能指针"的功能。这些指针是行为与正常指针相似的对象,唯一不同的是,当您通过指针访问对象时,它们会执行其他的任务。比如,当指针销毁时,或者当指针指向另
静态
方法
(
static
)和非静态(Non-
Static
)
方法
(以java为例)
静态
方法
(
Static
Method)与静态成员变量一样,属于类本身,在类装载的时候被装载到内存(Memory),不自动进行销毁,会一直存在于内存中,直到JVM关闭 非静态
方法
(Non-
Static
Method)又叫实例化
方法
,属于实例对象,实例化后才会分配内存,必须通过类的实例来引用。不会常驻内存,当实例对象被JVM 回收之后,也跟着消失 静态
方法
:⒈ 有静态属性的类,一般会定义静态
方法
。⒉ 没有属性的类,一般会定义静态
方法
。⒊ 如果一个
方法
与他所在类的实例对象无关,那么它就应该是静态的。静态
方法
可以被
C#运算符
重载
----关键字operator
C#运算符
重载
----operator运算符
重载
的实现可
重载
和不可
重载
运算符实例原文链接 您可以重定义或
重载
**C#**中内置的运算符。因此,程序员也可以使用用户自定义类型的运算符。
重载
运算符是具有特殊名称的函数,是通过关键字operator后跟运算符的符号来定义的。与其他函数一样,
重载
运算符有返回类型和参数列表。 例如,请看下面的函数: public
static
Box operator+ (Box b, Box c) { Box box = new Box(); box.length =
Java SE
62,616
社区成员
307,307
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章