1. java中方法覆写有什么意义呢,在子类中自己写一个方法实现功能不是一样的吗
程序更新,程序改写,程序维护的时候用处特别大。有时候类写的特别多不好找,可以用覆盖。在程序从无到有这个阶段不怎么用。还有就有系统原有的方法,比如控件重写,重绘,本来就不需要这这种界面,其他功能都需要,直接重写外观。嗯,比较直观。手机打的,请采纳。
2. Java方法覆写问题
我来解释下LZ的疑问哈,首先,父类私有的方法,也就是private方法,子类是既不可以重写,也不可以重载的,就算是跟父类一个同名的方法,那也是在子类中的一个新方法,不会跟父类冲突。
首先我们看书中的例子,父类中的this.fun是调用了自己类的方法,而new Student.fun()是调用了继承下来的父类的fun()方法,当然打印Per-->void print()只是说明了简单的继承
再看LZ的例子,父类的print方法是private的,是私有方法,是不能够重载和重写的,lz你在子类中也定义了default的print方法,只是一个新方法,并不是重写父类的,算不上是复写,只能算是一个新方法,不跟父类起冲突,也没有关系
3. JAVA 编写实现方法的重载和覆盖
重载就是在同一个类中有多个名称相同但参数和返回值不同的方法,例如int
add(int
a,
int
b)double
add(double
a,
double
b)在调用名称为add的方法时会调用参数最匹配的方法。
覆盖就是子类继承了父类,并将父类中的一个方法重新实现,也就是说将父类的方法用新的代码重新写一遍,这样在调用这个方法的时候运行的就是子类新的代码,而不是父类原来的代码。
重载和覆盖的最主要区别就是:相互重载的各个方法的名称必须相同,参数必须不相同,返回值可以相同也可以不相同;覆盖必须发生在继承中,且方法名称、参数和返回值一定要相同。要注意的是重载也可以发生在继承中,也就是说子类的方法与父类的方法名称相同,但参数不同。
4. java中重写、覆盖、覆写是不是一个意思
是一个意思,都是指子类对父类的方法、
变量
的重写。重写时要注意重写的规则,重写后,要条用父类被重写过的,用super.被重写的东西
5. 在java中什么叫方法覆盖
java中的方法重载发生在同一个类里面两个或者多个方法的方法名相同但是参数不同的情况。与此相对,方法覆盖是说子类重新定义了父类的方法。方法覆盖必须有相同的方法名,参数列表和返回类型。
覆盖者可能不会限制它所覆盖的方法的访问。
重载(Overloading)
(1)方法重载是让类以统一的方法处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数(类型)。重载Override是一个类中多态性的一种表现。
(2)java的方法重载,就是在类中可以创建多个方法,他们具有相同的名字,但具有不同参数和不同的定义。调用方法时通过传递给他们不同的参数个数和参数类型来决定具体使用那个方法,这就是多态性。
(3)重载的时候,方法名要一样,但是参数类型和个数不一样,返回值类型可以相同也可以不同。无法以返回类型来作为重载函数的区分标准。
重写(Overriding)
(1)父类与子类的多态性,对父类的函数进行重新定义。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写。在java中,子类可继承父类的方法,则不需要重新编写相同的方法。但有时子类并不想原封不动继承父类的方法,而是想做一定的修改,这就采用方法重写。方法重写又称方法覆盖。
(2)若子类中的方法与父类的中的某一方法具有相同的方法名、返回类型和参数表,则新方法覆盖原有的方法。如需要父类的原有方法,可以使用super关键字,该关键字引用房钱类的父类。
(3)子类函数访问权限大于父类。
6. java中 什么是方法的覆写方法的覆写使用时需要注意哪些事项
方法的覆写,也称为重写,是面向对象编程时在继承时要用的一项技术。
简单来说,就是在子类中写一个与父类中同名同参的方法,称之为覆盖(也即覆写),可以是对父类方法的补充,也可以写与父类方法完全不同的实现。
覆写的方法与普通方法相比,没有需要特别注意的地方。
7. java的继承中什么叫方法覆盖,是如何实现的
方法覆盖,从字面就可以知道,它是覆盖了一个方法并且对其重写,以求达到不同的作用。最熟悉的覆盖就是对接口方法的实现,在接口中一般只是对方法进行了声明,而在实现时,就需要实现接口声明的所有方法。除了这个典型的用法以外,在继承中也可能会在子类覆盖父类中的方法。在覆盖要注意以下的几点:
1、覆盖的方法的标志必须要和被覆盖的方法的标志完全匹配,才能达到覆盖的效果;
2、覆盖的方法的返回值必须和被覆盖的方法的返回一致;
3、覆盖的方法所抛出的异常必须和被覆盖方法的所抛出的异常一致,或者是其子类;
4、被覆盖的方法不能为private,否则在其子类中只是新定义了一个方法,并没有对其进行覆盖
8. java中方法的覆盖及重载是什么意思
覆盖是override方法重写
重载是overload
按照教科书上的定义,重载就是具有相同函数名,返回类型可以不同,参数个数、顺序、类型不同的函数。我的理解是重载是发生在两个或者是更多的函数具有相同的名字的情况下。
重写就是覆盖父类的方法,和父类有相同返回类型,参数,甚至是抛出的异常,重写方法不能为private,运用中最典型的就是对接口方法的覆盖。
9. java中 关于方法的覆盖 重载 重写
覆盖又叫重写,因此重写和覆盖是一个概念。它是覆盖了一个方法并且对其重写,以求达到不同的作用。形式有:对接口方法的实现,在继承中也可能会在子类覆盖父类中的方法。
重载:它是指我们可以定义一些名称相同的方法,通过定义不同的输入参数来区分这些方法,然后再调用时,VM就会根据不同的参数样式,来选择合适的方法执行。
举例:
publicclassParent{//定一个类
publicvoidread(){
}
publicvoidshow(){//重载了show方法
}
publicvoidshow(inta){//重载了show方法,比第一个方法多了一个参数
}
}
publicclassSonextendsParent{//son类继承父类parent
publicvoidread(){//覆盖了父类的read方法。
}
}