第10章 接口、继承与多态 方法的重载

方法的重载就是在同一个类中允许同时存在一个以上的同名方法,只要这些方法的参数个数或类型不同。

举个例子,就拿String类的valueOf方法,它的参数可以使用多种,重载了它就可以使用相同的方法名不同的参数,如果不用重载你就得为每种参数的方法取一个名字,比如叫valueOf1,valueOf2....这样人家在调用你写的api的时候会觉得很不方便。

时间: 2024-10-05 15:28:04

第10章 接口、继承与多态 方法的重载的相关文章

第10章 接口、继承与多态 抽象类和接口

一.抽象类 在解决实际问题时,一般将父类定义为抽象类,需要使用这个父类进行继承与多态处理.回想继承和多态原理,继承树中越是在上方的类越抽象,如:鸽子类继承鸟类.鸟类继承动物类等.在多态机制中,并不需要将父类初始化对象,我们需要的只是子类对象,所以在Java语言中设置抽象类不可以实例化对象,因为图形类不能抽象出任何一种具体图像,但它的子类却可以. 抽象类的语法如下:使用abstract关键字定义的类称为抽象类,而使用这个关键字定义的方法称为抽象方法,抽象方法没有方法体,这个方法本身没有任何意义,除

第10章 接口

1.在接口中,所有方法都是抽象方法,所有方法都不提供具体的实现. 2.类不能继承接口,只能实现接口所定义的方法. 3.接口中不包含任何构造器. 4.一个接口能继承多个接口. 5.接口不是类. 6.接口默认是抽象的,在声明接口时,不需要使用关键字abstract. 7.接口中的每一个方法默认也是抽象的,所以也不需要关键字abstract. 8.接口中的方法默认访问级别是Public. 9.接口中不能定义静态方法,只能包含抽象方法. 10.没有方法的接口被称为标记接口.

第10章 接口、继承与多态 多态

利用多态可以使程序具有良好的扩展性,并可以对所有类对象进行通用的处理. 如果定义一个四边形类,让它处理所有继承该类的对象,根据“向上转型”原则可以使每个继承四边形类的对象作为draw()方法的参数,然后在draw()方法中做一些限定就可以根据不同图形类对象绘制相应的图像,从而更为通用的四边形类来取代具体的正方形类和平行四边形类.这样处理能够很好地解决代码冗余问题,同时也易于维护,因为可以加入任何继承父类的子类对象,而父类方法也无需修改. package ten; public class Qua

第10章 接口、继承与多态 对象类型的转换

向上转型: 将子类对象看作是父类对象: 解释:平行四边形是四边形的一种,那么就可以将平行四边形对象看作是一个四边形对象.例如:鸡是家禽的一种,而家禽是动物中的一类,那么也可以将鸡对象看作是一个动物对象. package ten; class Quadrange{//四边形类 public static void draw(Quadrange q){//四边形类中的方法 } } public class Parallelogram extends Quadrange{//平行四边形类,继承了四边形

第10章 接口、继承与多态 Object类

在Java中,所有的类都直接或间接继承了java.lang.Object类.Object类是比较特殊的类,它是所有类的父类,是Java类层中的最高层类.当创建一个类时,总是在继承,除非某个类已经指定要从其他类继承,否则它就是从Java.lang.Object类继承而来. Java中的每个类都源于java.lang.Object类,如:String.Integer等都是继承于Object类,除此之外自定义的类也都继承于Object类,由于所有类都是Object子类,所以在定义类时,省略了exten

第10章 接口、继承与多态 类的继承

1Test2类继承Test类,在子类中可以连同初始化父类构造方法来完成子类初始化操作,既可以在子类的构造方法中使用super()语句调用父类的构造方法,也可以在子类中使用super关键字调用父类的成员方法等,但是子类没有权限调用父类中被修饰为private的方法,只可以调用父类中修饰为public或protected的成员方法等. 2继承并不只是扩展父类的功能,还可以重写父类的成员方法.重写(还可以称为覆盖)就是在子类中将父类的成员方法的名称保留,重写成员方法的实现内容,更改成员方法的存储权限,

第10章 接口、继承与多态 类的继承3

尝试创建一个父类,在父类中创建两个方法,在子类中创建覆盖第二个方法,为子类创建一个对象,将向上转型到基类并调用这个方法 class Testmain{ public static void method1(Testmain q){ System.out.println(1); } public static void method2(){ System.out.println(2); } } public class Test extends Testmain { public static v

第10章 接口、继承与多态

10.1 package tex; public abstract class one { abstract void test(); public static void main(String args[]) { new one(); } } //无法实例化 原文地址:https://www.cnblogs.com/comicfuji/p/9825678.html

第10章 接口、继承与多态 类的继承2

在Java中一切都以对象的形式进行处理. 1)实例化子类对象时首先要实例化父类对象,然后再实例化子类对象,所以在子类构造方法访问父类的构造方法之前,父类已经完成实例化操作: 2)在实例化子类对象时,父类无参构造方法将被自动调用,但有参构造方法并不能被自动调用,只能依赖于super关键字显式地调用父类的构造方法. package ten; class Parent { Parent(){ System.out.println("调用父类的parent()构造方法"); } } class