欢迎来到天天文库
浏览记录
ID:36875737
大小:302.00 KB
页数:38页
时间:2019-05-10
《有关面向对象的概念》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.1有关面向对象的概念面向对象程序设计围绕的几个主要概念:抽象数据类型、类、类型层次(子类),继承性、多态性。1.1有关面向对象的概念classCar{intcolor_number;intdoor_number;intspeed;voidbrake(){…}voidspeedUp(){…};voidslowDown(){…}}计算机中的对象的原型现实生活中的对象数据抽象类型1.1有关面向对象的概念一个例子在程序中操作对象是类的一个实例:即对象创建一个对象Helloobj=newHello();调用方法obj.showString(“He
2、lloWorld!”)classHello{}privateStrings;publicvoidshowString(){System.out.println(s);}publicvoidchangeString(Stringstr){s=str;returns;}1.1有关面向对象的概念什么是封装?封装把对象的所有组成部分组合在一起,封装定义程序如何引用对象的数据,封装实际私有数据方法上使用方法将类的数据隐藏起来,控制用户对类的修改和访问数据的程度。方法数据对象A对象B公有数据1.1有关面向对象的概念什么是子类?子类是作为另一个类的扩充或
3、修正所定义的一个类.bicycle(superclass)MountainbikesRacingbikesTandembikessubclass1.1有关面向对象的概念什么是继承?继承是子类利用父类中定义的方法和变量就像它们属于子类本身一样.classCar{intcolor_number;intdoor_number;intspeed;push_break(){…}add_oil(){…}}classTrash_CarextendsCar{doubleamount;fill_trash(){…}}1.1有关面向对象的概念什么是方法的覆盖?
4、在子类中重新定义父类中已有的方法。classCar{intcolor_number;intdoor_number;intspeed;push_break(){speed=0;}add_oil(){…}}classTrash_CarextendsCar{doubleamount;fill_trash(){…}push_break(){speed=speed-10;}}1.1有关面向对象的概念什么是方法的重载(多态性)?在同一个类中至少有两个方法用同一个名字,但有不同的参数。类voidshow(intint_num)voidshow(doubl
5、edouble_num)voidshow(nitnit_um,floatfloat_um)1231.23123,1.23重载与多态的区别方法的覆盖(overriding)和重载(overloading)子孙类中定义的方法和祖先类中某个方法同名,同参数行,则祖先类中的该方法被覆盖.方法的重载是指一个对象的多态性,即多个方法用相同的名称,但参数行不同.类voidshow(intint_num)voidshow(doubledouble_num)voidshow(nitnit_um,floatfloat_um)1231.23123,1.23对象与
6、引用间的关系s1s210001s2=s1;astring10001classMydate{intyear;intmonth;intday;}Mydatetoday=newMyDate()00010008todays1=“astring”;例:Strings1;Strings2;1.7Java中的类、方法和变量试用一个简单的类classCar{intcar_number;voidset_number(intcar_num){car_number=car_num;}voidshow_number(){System.out.println(“My
7、carNo.is:”+car_number);}}classCarDemo{publicstaticvoidmain(Stringargs[]){CarDemocar=newCar();DemoCar.set_number(3838);DemoCar.show_number();}}Mycarnumberis38381.7Java中的类、方法和变量类的继承关系classCar{intcar_number;voidset_number(intcar_num){car_number=car_num;}voidshow_number(){Syst
8、em.out.println(“MycarNo.is:”+car_number);}}classTrashCarextendsCar{intcapacity;voidset_ca
此文档下载收益归作者所有