欢迎来到天天文库
浏览记录
ID:15606983
大小:29.00 KB
页数:4页
时间:2018-08-04
《java论文---李秋阳》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、Java论文---类的继承班级:09网络姓名:李秋阳学号:04020901035Java论文---类的继承09网络李秋阳学号:04020901035摘要:类是面向对象技术中的一个非常重要的概念。类包括了一组特定对象的所有特性,是一个用来创建对象的模板。继承是存在于面向对象程序的两个类之间的一种关系。当一个类拥有另一个类的所有数据和操作时,就称这两个类之间具有继承关系,被继承的类称为父类或超类,继承了父类或超类所有属性的类称为子类。程序示例:classVehicle{publicvoidstart(){system.out.println(“Starting.
2、..”);}}classCarextendsVehicle{publicvoiddrive(){system.out.println(“Driveing...”);}}publicclassApp{publicstaticvoidmain(string[],args){system.out.println(“Createingacar...”);Carc=newCar();c.start();c.drive();}}程序中定义了Vehicle、Car和App三个类,App为主类。通过关键字extends将类Car说明为类Vehicle的子类,Car除从Veh
3、icle类中继承start方法,还可以添加自己的变量和方法,例子在Car类中添加了方法drive。程序运行结果如下:Createingacar...Starting...Driveing...Java中的继承与生活中的很相似,但是又有他们之间的不同。Java中继承代表的是一个新的类(子类)可以使用当前类(父类)里面的部分方法和属性,而在这里面又有一些需要我们注意的地方:1.子类和父类在同意包下的时候,可继承的方法属性为publicandprotected2.而他们不在统一包中时,只能继承public的而且需要特别说明的是,构造函数在以上两种情况下是都不可以继
4、承的。继承其实类似于我们生活中的遗传关系,子代可以继承父辈的财产(protected)和物品(public),当然这是理想状况(同一包);当子代和父辈不是直接血缘关系(继父母)时(不在同一包),那么只能继承物品(public),而无法继承(部分)财产(protected)(这里当然不绝对)。这里的物品其实就相当于部分财产。父辈有父辈的习惯,子代有子代的习惯,有的是耳濡目染继承下来的,那么就是父辈和子代所共有的,有的是子代没有学的,子代在做这些事情的时候有自己的处理方式,那么做同一件事的方法两代人直接按就会产生不同--这在我们Java中就是所谓的方法的重写。重
5、写时也有需要我们注意的事项:1、方法之间的名字,参数个数类型以及返回值类型都必须完全相同!2、允许不同的地方就是访问修饰符,还有就是子类方法的具体内容。3、对于方法修饰符,范围子类必须大于或等于父类的,即:public--> protected --> private.自动转型也是在继承的基础上所产生的,就是说子类可以自动转换为父类的成员。对于自动转型,我们可以这样理解:一个大学老师,可以教大学生,也可以教初中生,高中生,小学生那么。对于这个教学的方法我们就可以只写一次。然后在使用时进行相应的自动转换一达到教学各种不同阶层学生的目地。对于我们来说,使用自动
6、转型,那么就只能调用父类中已经定义过的方法。对于这个转型,我们有2种方法: 一:父类名 父类对象名 = new子类构造函数();二:父类名 父类对象名 = new子类构造函数();&&子类名 子类对象名 = new子类构造函数();public返回值类型 方法名(父类类名 父类对象名){父类对象名.方法名();}方法名(父类对象名);方法名(子类对象名);但是,自动转型也是有明显缺点的:如果使用自动转型,则无法调用子类的独有方法。因为计算机比较笨,它只能按照固定的已经设定好的方式去执行,Java在编译的时候,是根据对象名的类型去编译程序
7、,这个时候在子类中,是找不到相应的方法的,所以编译出错了。现实生活中,我们对于一件事会有很多不同的方法去实现。比如:做菜我们可以选择煎炒烹炸,上班我们可以选择公交地铁,就连睡觉我们也可以选择侧卧仰卧,这也就是我们所说的多态。Java中,多态是由方法重载,继承,方法重写,自动转型等引起的一个综合技术点。也就是说,我们可以通过由继承,重载,自动转型实现各种方法的目的,也就是实现多态。由继承和继承引申出的东西我们就介绍完啦!其实,继承的作用是非常大的,通过这些继承的关系,我们可以较少编成的工作量,提高代码的利用率,程序的扩展性能,更减少了形同代码串的出现,降低了这
8、方面的冗余,从而在很大程度上提升我们的编程效率。
此文档下载收益归作者所有