抽象封装和类_第1页
抽象封装和类_第2页
抽象封装和类_第3页
抽象封装和类_第4页
抽象封装和类_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

抽象封装和类第一页,共七十四页,2022年,8月28日2023/2/1113.1面向过程到面向对象的转变3.2面向对象的基本概念3.3类3.4类的修饰和它的“推广空间”3.5数据成员3.6方法第三章抽象、封装和类第二页,共七十四页,2022年,8月28日2023/2/1123.1面向过程到面向对象的转变使用面向过程描述一件事青椒炒牛肉取出青椒500g,用刀切成细丝,过油取出牛肉300g,切丁,用醬油、酒、淹制

30分钟起油锅、放入牛肉炒及青椒大火快炒1分半拿出太白粉、水调在一起,这个称为芡汁。將芡汁倒入锅中搅拌,会产生粘稠现象这叫芶芡完成。使用面向对象描述一件事青椒炒牛肉

青椒

数量:500g

处理:用刀切成细丝,过油

牛肉

数量:300g

处理:切丁,用醬油、酒、淹制

芡汁

制作:太白粉调上适量的水

芶芡:將芡汁倒入锅中

青椒处理好、牛肉处理好、芡汁制作好,放入锅中快炒1分半后用芡汁芶芡即可。第三页,共七十四页,2022年,8月28日2023/2/113何为面向对象先定义好参与这件事的物品有哪些(这些物品叫做“对象”)再定义这些物品所需的数量及行为(这些数量及行为叫做

“属性”与“方法”)接下來可用物品间的互动行为來描述整件事情是如何发生的。

(这部分的描述称为“主程序”)青椒炒牛肉

青椒

数量:500g

处理:用刀切成细丝,过油

牛肉

数量:300g

处理:切丁,用醬油、酒、淹制

芡汁

制作:太白粉调上适量的水

芶芡:將芡汁倒入锅中

青椒处理好、牛肉处理好、芡汁制作好,放入锅中快炒1分半后用芡汁芶芡即可。第四页,共七十四页,2022年,8月28日2023/2/1143.2面向对象的基本概念3.2.1抽象什么是抽象

抽象就是抽出事物的本质特性而暂时不考虑它们的细节。过程抽象和数据抽象是常用的两种主要抽象手段。

第五页,共七十四页,2022年,8月28日2023/2/1153.2.2封装将信息隐蔽的过程称为封装。第六页,共七十四页,2022年,8月28日2023/2/116有两方面的原因促使我们控制对成员的访问。原因一:防止程序员接触他们不该接触的东西——通常是内部数据类型的设计思想。若只是为了解决特定的问题,用户只需操作接口即可,毋需明白这些信息。原因二:允许库设计人员修改内部结构,不用担心它会对客户程序员造成什么影响。

第七页,共七十四页,2022年,8月28日2023/2/1173.2.3对象对象(object)应是实际问题域中有意义的个体或概念实体。对象应该以某种方式与系统发生关联,即对象应该与系统中其他有意义的对象进行消息传递,并提供外部服务。第八页,共七十四页,2022年,8月28日2023/2/118如何理解对象?(1)所有东西都是对象。可将对象想象成一种新型变量;它保存着数据,但可要求它对自身进行操作。(2)程序是一大堆对象的组合;通过消息传递,各对象知道自己该做些什么。(3)每个对象都有自己的存储空间,可容纳其他对象。(4)每个对象都有一种类型。根据语法,每个对象都是某个“类”的一个“实例”。(5)同一类所有对象都能接收相同的消息。第九页,共七十四页,2022年,8月28日2023/2/119对象的三个要素:1、对象的标识:对象的名字。2、属性:对象的静态特征3、方法:服务和操作。汽车行驶,转弯,刹车静态属性动态属性颜色,马力等第十页,共七十四页,2022年,8月28日2023/2/1110对象的图形化描述:

对象:小李的手表静态特征:小李指针表单价180元银色表带动态特征:显示当前时间修改当前时间第十一页,共七十四页,2022年,8月28日2023/2/1111实验二---------Java语言基础

掷骰子6000次,分别统计每一面出现的次数。(int)(Math.random()*(100+1))第十二页,共七十四页,2022年,8月28日2023/2/1112importjava.util.Scanner;importjava.math.*;publicclassAA{publicstaticvoidmain(String[]args){intcount[]={0,0,0,0,0,0};for(inti=0;i<6000;i++){intresult=(int)(Math.random()*6);count[result]++;}//printtheresultfor(inti=0;i<count.length;i++){System.out.println(i+"出现"+count[i]+"次!");}}}第十三页,共七十四页,2022年,8月28日2023/2/11133.3类

类的相关概念何谓“类(Class)”类是现实世界某些对象的共同特征(属性和操作)的表示,对象是类的实例。將所需属性和操作打包在一起,并给它一个名字以方便操作。类的属性:就是类的静态属性的简称,指类内包含的各项数据,如变量或其他类的对象;类的服务:则被称为成员函数或方法。第十四页,共七十四页,2022年,8月28日2023/2/1114客戶StringUser=“Robert”;StringPass=“1234”;Login(User,Pass){ ……}classCustomer{StringUser=“Robert”;StringPass=“1234”;Login(User,Pass){ ……}};属性方法第十五页,共七十四页,2022年,8月28日2023/2/1115类与对象的关系类(Class):对象的设计蓝图对象(Object):根据类建造出來的实体第十六页,共七十四页,2022年,8月28日2023/2/1116classCustomer{StringUser=“Robert”;StringPass=“1234”;functionLogin(User,Pass){ ……}};Robert=newCustomerPeter=newCustomerLisa=newCustomer对象类第十七页,共七十四页,2022年,8月28日2023/2/1117何谓面向对象程序设计把真实世界的物品,以class表現出來“客戶”classCustomer{StringUser=“Robert”;StringPass=“1234”;functionLogin(User,Pass){ ……}};RobertPeterLisaRobert=newCustomerPeter=newCustomerLisa=newCustomer第十八页,共七十四页,2022年,8月28日2023/2/1118类的基本定义方法:[修饰符]class类名

[extends父类][implements接口名]{类成员变量声明类方法声明}第十九页,共七十四页,2022年,8月28日2023/2/11191.关于类头---class、extends

class关键字,在它的后面,应跟随新数据类型的名称。(注意不要把class写成Class)。父类名跟在extends

关键字后面,用来说明当前类是哪个已经存在类的子类,存在继承关系。第二十页,共七十四页,2022年,8月28日2023/2/11201.关于类头---类的修饰符“public”(公共)——意味着后续的定义任何人均可使用。“private”(私有)——意味着除您自己、类型的创建者以及那个类型的内部函数成员,其他任何人都不能访问后续的定义信息。“protected”(受保护的)—与“private”相似,只是一个继承的类可访问受保护的成员,但不能访问私有成员。“friendly”(友好的)——若某样东西是“友好的”,意味着它只能在这个包装的范围内使用(所以这一访问级别有时也叫作“包装访问”)第二十一页,共七十四页,2022年,8月28日2023/2/11211.关于类头---接口名接口是一种与类相似的结构,只包含常量和抽象方法,目的是指明多个对象的共同行为。接口名跟在implements关键字后面,用来说明当前类中实现了哪个接口定义的功能和方法。第二十二页,共七十四页,2022年,8月28日2023/2/11222.关于类体类体的定义要包括类的具体内容,包括类的属性与方法。class<classname>{<memberFielddeclarations><memberMethoddeclarations>}第二十三页,共七十四页,2022年,8月28日2023/2/1123Java中声明类属性为简单变量的语法如下:

[修饰符]变量类型变量名[=变量初值];变量类型和变量名是声明一个变量必不可少的部分。2.关于类体---类的属性第二十四页,共七十四页,2022年,8月28日2023/2/11242.关于类体---类的方法Java中声明方法的语法如下:

[修饰符]返回值类型方法名(参数列表){方法体:局部变量声明;语句序列;}类中定义的方法通常起到两种作用:一是围绕着类的属性进行各种操作;二是与其他的类或对象进行数据交流、消息传递等操作。第二十五页,共七十四页,2022年,8月28日2023/2/1125

属性:nameSalaryhireDay类:Employee服务:getName3、类图的描述第二十六页,共七十四页,2022年,8月28日2023/2/11263.3.2用户程序自定义类

Java程序员把注意力放在创建称为类的用户自定义类型(user-definedtype)上,类也称为程序员定义的类型(programmer-definedtype);

每个类都含有数据和一组操作数据的方法:类中的数据部分称为实例变量。用户定义类型(即类)的实例称为对象。第二十七页,共七十四页,2022年,8月28日2023/2/1127classEmployee{//构造函数

publicEmployee(Stringn,doubles){name=n;//职工姓名

salary=s;//职工工资

}

//方法1publicStringgetName(){returnname;}

//更多的方法

……

//属性的实例

privateStringname;privatedoublesalary;}第二十八页,共七十四页,2022年,8月28日2023/2/11283.3.3创建类及类的实例对象

对象是类的一个实例,类是同种对象的抽象,是创建对象的模板。在程序中创建一个对象,将在内存中开辟一块空间,其中包括该对象的属性和方法。

第二十九页,共七十四页,2022年,8月28日2023/2/11291、声明对象格式:类名对象列表;例:EmployeenewEmp1,newEmp2;2、建立对象格式:对象名=new

构造方法();例:newEmp1=newEmployee("张三",75);

newEmp2=newEmployee(“李四",75);

或合为一步:

EmployeenewEmp2=newEmployee(“李四",75);注意:创建对象以某个类为模板,这个类里定义了哪些属性和方法,新建的对象就必然在内存里拥有相应的属性和方法。相对于简单数据类型,类就是用户自己定义的复杂的抽象数据类型;

相对于简单变量,对象就是复杂的既包括数据又包括方法代码的复杂数据单位。第三十页,共七十四页,2022年,8月28日2023/2/11303、初始化对象构造函数

要使用对象,首先必须构造它们,并指定它们的初始状态,然后将方法应用于对象。在Java程序设计语言中,使用构造函数(constructor)来构造新的实例。一个构造函数是一个新的方法,它的作用是构造并初始化对象。第三十一页,共七十四页,2022年,8月28日2023/2/1131构造函数是类的一种特殊方法,它的特殊性主要体现在如下的几个方面:(1)构造函数的方法名与类名相同。(2)构造函数没有返回类型。构造函数可以有0个、1个或多个参数。(3)构造函数的主要作用是完成对类对象的初始化工作。(4)构造函数不能由编程人员显式地直接调用,构造函数总是和new运算符一起被调用。。(5)在创建一个类的新对象的同时,系统会自动调用该类的构造函数为新对象初始化。第三十二页,共七十四页,2022年,8月28日2023/2/1132

Java中可以不定义构造函数,此时系统会自动为该系统生成一个默认的构造函数。这个构造函数的名字与类名相同,它没有任何形式参数,也不完成任何操作。为了避免失去控制,一般将构造函数的声明与创建分开处理。

第三十三页,共七十四页,2022年,8月28日2023/2/1133例1

Java中对象的初始化classValuement{booleana; charb; bytec; shortd; inte; longf; floatg; doubleh;voidprint()

{ystem.out.println("boolean"+a); System.out.println("char"+b); System.out.println("byte"+c); System.out.println("short"+d); System.out.println("int"+e); System.out.println("long"+f); System.out.println("float"+g); System.out.println("double"+h);}}publicclassInitVal{publicstaticvoidmain(String[]args)

{Valuementvalue=newValuement(); value.print();}}第三十四页,共七十四页,2022年,8月28日2023/2/1134booleanfalsecharbyte0short0int0long0float0.0double0.0第三十五页,共七十四页,2022年,8月28日2023/2/1135习题1、抽象小李、小王等同学,构造学生类,用类图方法描述学生类,用对象图描述小李。2、写出描述学生类的java语言片段。并以此类声明“小李同学”、建立“小李同学”。第三十六页,共七十四页,2022年,8月28日2023/2/11363.4类的修饰和它的“推广空间”类的修饰符用来说明对它的访问限制1、无修饰符如果一个类前无修饰符,那么这个类只能被同个包里的类使用。(同个程序文件中的类都可以使用该类)。第三十七页,共七十四页,2022年,8月28日2023/2/1137publicclassc3_2//公共类c3_2{publicstaticvoidmain(String[]args){

ppp1=newpp();

//类c3_2中创建了一个无修饰符类pp的对象p1System.out.println(p1.a);

}}例2classpp

//无修饰符的类pp{inta=45;//pp类的数据成员a

}第三十八页,共七十四页,2022年,8月28日2023/2/11382、public修饰符表示该类是公共类,可以被本包其他类使用,可以被其他包中类使用,但在其他包中使用该类,必须用import语句引入该类所在包。

注意:在一个程序文件中,只能定义一个public类例如:上例中,c3_2就是一个公共类。第三十九页,共七十四页,2022年,8月28日2023/2/11393、final修饰符用来说明最终类说明该类为最终类的目的为:⑴如果一个类被声明为final,通常是一些有特殊作用的、用来完成标准功能的类。将一个类定义为final则可以将它的内容、属性和功能固定下来,与它的类名形成稳定的映射关系,从而保证引用这个类时所实现的功能是准确无误的。⑵提高安全性。由于最终类不能派生子类,所以切断了非法访问利用派生子类访问关键信息的途径。第四十页,共七十四页,2022年,8月28日2023/2/1140例3importjava.awt.*;importjava.applet.*;finalclassp1//用final修饰的类p1{inti=7;intj=1;voidf(Graphicsg)

{g.drawString("OK",20,50);}}//publicclassc3_3extendsp1publicclassc3_3extendsApplet{publicvoidpaint(Graphicsg)

{p1n=newp1(); n.f(g); n.i=40; n.j++; g.drawString("i="+n.i,20,70); g.drawString("j="+n.j,20,90);

}}用final修饰的类p1不能有继承类OKi=40j=2第四十一页,共七十四页,2022年,8月28日2023/2/11414、abstract修饰符用来说明抽象类抽象类不能被实例化。例如:

abstractclasstransport{….}

如果在别的类中出现下面的语句就是非法的:

transporttrans1=newtransport();

解决方法:由该抽象类派生一子类,重载其中的抽象方法,完善它。然后用该子类实例化。方法重载:在一个类中有两个方法,它们具有相同的名字,但有不同的参数列表。第四十二页,共七十四页,2022年,8月28日2023/2/11423.5数据成员3.5.1数据成员的声明Java中声明类属性为简单变量的语法如下:

[修饰符]变量类型变量名[=变量初值];注:修饰符分两种:访问权限控制publicprivateprotected非访问权限控制staticfinal第四十三页,共七十四页,2022年,8月28日2023/2/11433.5.2访问权限控制符

⑴私有访问控制符private

用private修饰的属性只能被该类自身所访问和修改,而不能被任何其他类,包括该类的子类,来获取和引用。

例:有两个字段,它们含有在Employee类的实例内部被操作的数据。

privatestringname;privatedoublesalary;

private(私有的)关键字用来确保可以访问这些实例字段的只能是Employee类本身的方法。将属性说明为“私有的”是数据安全的保证。第四十四页,共七十四页,2022年,8月28日2023/2/1144⑵保护访问控制符protected

用protected修饰的成员变量可以被三种类所引用

该类自身、与它在同一个包中的其他类、在其他包中的该类的子类。

使用protected修饰符的主要作用:

允许其他包中的它的子类来访问父类的特定属性。例:protecteddoublesalary;第四十五页,共七十四页,2022年,8月28日2023/2/1145⑶私有保护访问控制符privateprotected

private和protected按顺序连用构成一个完整的访问控制符:私有保护访问控制符。用privateprotected修饰的成员变量可以被两种类访问和引用:一种是该类本身,一种是该类的所有子类,不论这些子类是与该类在同一个包里,还是处于其他的包中。相对于protected,privateprotected修饰符把同一包内的非子类排除在可访问的范围之外,使得成员变量更专有于具有明确继承关系的类,而不是松散地组合在一起的包。

第四十六页,共七十四页,2022年,8月28日2023/2/1146⑷公共访问控制符public

字段应用public关键字,这是一种非常糟糕的做法,破坏封装,不推荐。注:一个类作为整体对程序的其他部分可见,并不能代表类内的所有属性和方法也同时对程序的其他部分可见,前者只是后者的必要条件;类的属性和方法能否为所有其他类所访问,还要看这些属性和方法自己的访问控制符。

第四十七页,共七十四页,2022年,8月28日2023/2/11473.5.3静态修饰符

static称为静态修饰符,它可以修饰类中的属性。使用场合:只想用一个存储区域来保存一个特定的数据——无论要创建多少个对象,甚至根本不创建对象;被static修饰的属性称为静态属性;

最本质的特点:它们是类的属性,而不属于任何一个类的具体对象对于该类的任何一个具体对象而言,静态属性是一个公共的存储单元,任何一个类的对象访问它时,取到的都是相同的数值,同样任何一个类的对象去修改它时,也都是在对同一个内存单元做操作。访问:类名加点操作符访问。第四十八页,共七十四页,2022年,8月28日2023/2/1148importjava.awt.*;importjava.applet.*;例4classpc{ staticdoublead=8;}publicclassc3_4extendsApplet{publicvoidpaint(Graphicsg)

{pcm=newpc();pcm1=newpc(); m.ad=0.1;//只对m对象的数据成员ad赋了值

g.drawString("m1.ad="+m1.ad,20,50);g.drawString(“pc.ad="+pc.ad,20,70); g.drawString("m.ad="+m.ad,20,90);

}}m1.ad=0.1pc.ad=0.1m.ad=0.1第四十九页,共七十四页,2022年,8月28日2023/2/1149最终属性修饰符final

无论static还是final字段,都只能存储一个数据,而且不得改变。初始化:可以在声明时初始化;可以通过构造方法初始化;不能在程序的其他部分赋值。在对象被构造时,常量必须被初始化。

即,必须保证在每一个构造函数结束之前其值已被设定。以后其值不能改变。第五十页,共七十四页,2022年,8月28日2023/2/1150importjava.awt.*;例5importjava.applet.*;classca{staticintn=20;finalintnn;//声明nn,但没有赋初值

finalintk=40;//声明k并赋初值40ca() {nn=++n;}//在构造方法中给nn赋值}第五十一页,共七十四页,2022年,8月28日2023/2/1151publicclassc3_5extendsApplet{publicvoidpaint(Graphicsg){cam1=newca();//创建对象m1,

cam2=newca();//创建对象m2,

m1.nn=90; g.drawString("m1.nn="+m1.nn,20,30);g.drawString("m1.k="+m1.k,20,50);g.drawString("m2.nn="+m2.nn,20,70);g.drawString("m2.k="+m2.k,20,90);

}}//错误的赋值语句,因nn是标识符常量m1.nn=21m1.k=40m2.nn=22m2.k=40importjava.awt.*;例5importjava.applet.*;classca{staticintn=20;finalintnn;//声明nn,但没有赋初值

finalintk=40;//声明k并赋初值40ca()

{nn=++n;}}//在构造方法中给nn赋值第五十二页,共七十四页,2022年,8月28日2023/2/11523.6.1方法概述3.6方法

Java程序是由一个个类定义组成的;类有两个部分:属性和方法;属性描述类是什么,方法描述类做什么;方法是类的主要组成部分。在一个类中,程序的作用体现在方法中;方法即是JAVA创建一个有名字的子程序;一个主方法和若干个子方法构成;主方法调用其他方法,其他方法间也可互相调用;同一个方法可被一个或多个方法调用任意次。

第五十三页,共七十四页,2022年,8月28日2023/2/1153Java程序的基本结构如下:引入Java类库;定义用户类1{

定义类1的若干变量或对象:定义类1的方法1;定义类1的方法2;

定义类1的方法M1;}定义用户类2{定义类2的若干变量或对象:定义类2的方法1;定义类2的方法2;

定义类2的方法M2}第五十四页,共七十四页,2022年,8月28日2023/2/1154

Java语言的方法实现子任务处理时,有下面几个原则与规律:(1)算法中需要细化的步骤、程序中重复的代码以及重载父类方法都可以定义成类的方法。(2)界面清晰。(3)大小适中。(4)方法有两种:一种:标准方法,JavaAPI提供了丰富的类和方法,这些方法提供了程序员所需的许多功能。另一种:用户自定义的方法,以解决用户专门需要。(5)Java应用程序中,程序的执行从main类开始,调用其他方法后又回到main类,在main类中结束整个程序的运行。第五十五页,共七十四页,2022年,8月28日2023/2/11553.6.2定义方法1.声明方法头2.声明方法体Java中声明方法的语法如下:

[修饰符]返回值类型方法名(参数列表)throws例外名1,例外名2,…{方法体:局部变量声明;语句序列;}类的方法,又称为成员函数,用来规定类属性上的操作第五十六页,共七十四页,2022年,8月28日2023/2/11561.声明方法头方法头一般由方法名、参数列表、返回类型、方法修饰符和方法抛出的例外五部分组成。(1)方法名可以是任何有效的标识符,命名规则与标识符命名规则相同。(2)类型说明符用来指定方法返回值的类型,方法最多只能返回一个值。(3)参数列表是方法的输入接口,它列出了一系列形式参数的类型和名称,在方法参数表的右括号后加一个分号是语法错误。参数表以逗号为分隔符,其中包含了方法被调用时传递给方法的参数说明。对于方法定义中的每一个参数,方法调用时必须有一个参量与之对应,而且该参量的类型必须与对应参数类型相一致。第五十七页,共七十四页,2022年,8月28日2023/2/11572声明方法体方法头定义了方法的性质,方法体定义了方法的具体内容。

注:在一个方法中定义另一个方法将产生语法错误。(1)最好避免局部变量“屏蔽”实例变量,在一个类中不使用同名标识符就可以做到这一点;方法调用中参数用来传递数值、传递引用,同时方法还可以嵌套、递归调用。(2)方法体中如果指定了非void的返回值类型,方法中就必须包含一条return语句保证任何情况下都有返回数值,return语句后面不能跟任何表达式;第五十八页,共七十四页,2022年,8月28日2023/2/1158例如下面的语句为部门类Department定义方法:classDepartment{intm_DeptNo;//部门编号

Stringm_DeptName;//部门名称

intm_DeptTotalEmp;//部门雇员数

ManagerEmployeem_DeptMgr;//部门主管

intgetDeptNo()//获取当前对象的部门号

{returnm_DeptNo;

}

//返回这个对象的部门号

}第五十九页,共七十四页,2022年,8月28日2023/2/1159访问控制符当前类(D)当前类的所有子类(C)当前类所在的包(B)所有类(A)private

protected

publicprivateprotected

3方法修饰符(访问控制符)第六十页,共七十四页,2022年,8月28日2023/2/11603方法修饰符(非访问控制符)一、static修饰的静态方法属于整个类的类方法;不用static修饰的方法是属于某个具体类对象的方法。使用特点:1)可用对象名或类名作前缀引用静态方法;2)static方法只能访问static数据成员,不能访问非static数据成员;非static方法可以访问static数据成员;3)static方法只能访问static方法,不能访问非static方法;非static方法可以访问static方法;第六十一页,共七十四页,2022年,8月28日2023/2/11614)static方法不能被覆盖,即这个类的子类不能有相同名,相同参数的方法;5)main方法是静态方法。第六十二页,共七十四页,2022年,8月28日2023/2/1162classf{intd1;staticintd2;voidme(){…..}staticvoidme1(){……}staticvoidme2()

{me1();d1=3;me();d2=6;}}classf1extendsf{voidme1(){……}}//错//错//错//对//对第六十三页,共七十四页,2022年,8月28日2023/2/1163二、final修饰的最终方法为方法“上锁”,防止任何继承类改变它的本来含义。设计程序时,若希望一个方法的行为在继承期间保持不变,而且不可被覆盖或改写,就可以采取这种做法。注意:若final修饰了某个方法,则该类的子类就不能覆盖父类的方法。即不能再重新定义与此方法同名的自己的方法,而仅能使用从父类继承来的方法。

第六十四页,共七十四页,2022年,8月28日2023/2/1164三、abstract修饰的抽象方法特点:

1)只有方法头,无具体方法体;

2)具有一个或多个抽象方法的类本身必须为abstract类;

3)方法体的具体实现,由当前类的不同子类在它们各自的类定义中完成。(即各子类继承父类后,重载方法)(也即抽象方法在子类中实现。)第六十五页,共七十四页,2022年,8月28日2023/2/11653.6.3方法的调用

一、调用方法分类

Java语言中调用方法有两类:

1、需要程序书写专门的调用命令来调用的方法,称为程序调用方法;2、运行过程中系统自动调用的方法,称为系统方法;例如paint()等。这两类方法的定义和使用原则有很大差异。第六十六页,共七十四页,2022年,8月28日2023/2/1166二、调用方法的语句形式

1、在类中调用类自身的方法,可以直接使用这个方法的名称;classtemp{Stringname;……Stringget(){returnname;}voidprint(){System.out.print(“name=”+get());}}第六十七页,共七十四页,2022年,8月28日2023/2/11672、调用其他对象或类的方法,则需要使用该对象或类为前缀。publicclassc3_temp{publicstaticvoidmain(String[]args){…….tempobj=newtemp();obj.print();……}}classtemp{Stringname;……Stringget()

{returnname;}voidprint()

{System.out.print(“name=”+get());

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论