资源描述:
《Java高级编程-面向对象高级话题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第一周周一内容面向对象高级主题本节内容类的组成对象,对象相等?(==与equals)封装、继承和多态抽象类与接口面向接口编程类或对象关系,代码复用关键字static、final、abstract等内部类,枚举类1、类的组成请举例,如Car类,请尽你的理解给出一个类可以有哪些要素组成现实生活中的对象可以将现实生活中的对象经过抽象,映射为程序中的对象。对象在程序中是通过一种抽象数据类型来描述的,这种抽象数据类型称为类(Class)。classCar{intcolor_number;intdoor_number;intspeed;Tyre[]tyres;Engineengine
2、;voidbrake(){…}voidspeedUp(){…}voidslowDown(){…}}抽象数据类型1、类的组成定义类的语法格式:[修饰符]class类名{….类体…..}类体可以由多个属性、方法、构造器组成。注意:类的修饰符可以是public、final或省略这两个以及abstract。类名只要是合法的标识符.一个类里可以包含三种最常见的成员:构造器、属性、方法。1、类的组成定义属性的语法格式:[修饰符]属性类型属性名[=默认值];修饰符可以是访问权限:public:可被任何类访问。protected:被类自身,子类及同一包中的类访问。default:也称友好
3、,被类自身和同一包中的类访问。private:只能被类自身访问。其他:transient声明一个暂时性变量,对象存档时不必保存该变量;final声明一个常量,程序不能改变其值,通常用大写;voltatile用于声明一个共享变量,用于多个并发线程共享;static:表示类成员。成员变量和局部变量成员变量指的是在类范围里定义的变量;局部变量指的是在一个方法内定义的变量。不管是成员变量还是局部变量都遵守相同的命名规则。成员变量分为类属性和实例属性.对于类属性无论通过类还是对象来访问都是访问同一个对象,只要一个对象改变了类属性,那么其他对象对应的类属性也改变了.成员变量不用显式初
4、始化,只要定义了一个类属性或实例属性,系统默认进行初始化。局部变量局部变量可分为三种:形参方法局部变量代码块局部变量.与成员变量不同的是除了形参外,其他局部变量都必须显式地初始化,Java里允许局部变量和成员变量重名。这样局部变量会覆盖成员变量,这时通过this来调用实例的属性.成员变量的初始化当类被加载时,类成员就在内存中分配了一块空间。当对象被创建时,实例成员就在内存中分配了内存空间。实例变量与实例共存亡;类变量与类本身共存亡。局部变量的运行机制局部变量仅在方法内有效。当方法执行完成时,局部变量便会自动销毁。1、类的组成定义方法的语法格式:[修饰符]方法返回值类型方法
5、名(形参列表){….方法体….}方法中的修饰符可以是public,protected,private,static,final,abstract,其中访问控制符只能出现一个,abstract,final只能出现其一.返回值类型可以是基本类型和引用类型,如果无返回值,要用void来声明形参列表,可以由零到多组组成,参数之间用逗号(“,”)隔开.static是一个特殊的关键字,译为”静态”,所有有static修饰的叫类属性,类方法,类成员.1、类的组成定义方法的语法格式:[修饰符]方法返回值类型方法名(形参列表){….方法体….}方法的调用:1、类的组成定义方法的语法格式:[
6、修饰符]方法返回值类型方法名(形参列表){….方法体….}方法的重载就是在同一个类中允许同时存在一个以上的同名函数,只要它们的参数个数或类型不同即可。如:publicclassTest{publicstaticvoidmain(String[]args){intisum;doublefsum;isum=add(3,5);isum=add(3,5,6);fsum=add(3.2,6.5);}publicstaticintadd(intx,inty){reutrnx+y;}publicstaticintadd(intx,inty,intz){returnx+y+z;}publ
7、icstaticdoubleadd(doublex,doubley){returnx+y;}}修饰词访问权限:public:protected:private:default:其他abstract修饰的为抽象方法,必须被重写,抽象类不一定包含abstract方法,但如果一个类包含abstract方法,该类必须声明为抽象类;final修饰的方法不能再被类重写;native用于将java代码和其他语言的代码集成起来;synchronized用来控制多个并发线程对共享数据的访问。static:类方法。不同限定词的访问权限限定词同一类