java中的重载和重写

重载发生在一个类里面,方法名相同,参数的个数或者类型不同,它是一种编译时多态

为什么不能根据返回类型区分重载?

在Java语言中,要重载一个方法,除了要与原方法具有相同的简单名称之外,还要求必须拥有一个与原方法不同的特征签名;

特征签名就是一个方法中各个参数在常量池中的字段符号引用的集合,也就是因为返回值不会包含在特征签名之中,因此Java语言里面是无法仅仅依靠返回值的不同来对一个已有方法进行重载。

 

重写发生在子类继承父类的时候如,果在子类中定义某方法与其父类有相同的名称和参数则该方法被重写,不过子类函数的访问修饰权限不能小于父类的

 

posted @ 2019-07-25 20:32  LeeJuly  阅读(137)  评论(0)    收藏  举报