网站大量收购独家精品文档,联系QQ:2885784924

5—面向对象程序设计2.pptVIP

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5—面向对象程序设计2

第五章 面向对象程序设计 成都东软信息技术学院 计算机系 黄伟;内容提醒;5.2.2 构造方法(Constructor Method) 在创建对象的同时,调用这个对象所属类的构造方法来完成对象的实例化(内存分配)。 构造方法的形式如下: public 类名( 参数 ) { 语句体 } 其中的语句体为初始化实例变量的赋值语句,可以使用参数值作为变量的初值,也可以直接给变量赋具体的数值。 ;构造对象实例(类的实例化)的过程: (1)根据需要将类加载到内存中。 (2)新对象分配内存空间,用缺省值初始化实例变量。 (3)执行显式初始化(int a = 10;)。 (4)执行构造方法。变量的值重置或者在构造方法中设置。 (5)把对象的一个引用值存储在变量中。;构造方法具有以下几个的特点: (1)构造方法的方法名与其所在类的名称相同。 (2)虽然构造方法没有返回值,???是也不能有void关键字。 (3)构造方法的修饰符总是public。 (4)构造方法的主要作用是构造类的对象。; 可以为People类增加一个如下所示的构造方法 public People() { name = 沈昕; age = 26; gender = F; height = 1.62; weight = 55.5; } 在上面的构造方法中,一共给5个实例变量赋了初值。 当调用该构造方法时,就可以完成对5个实例变量的初始化。;如果希望在创建对象时,其实例变量具有不同的初值,可以通过传递参数并将参数值赋给实例变量的方法来实现。 构造方法的参数要与实例变量(不一定)一 一对应 例如:People类的另一种构造方法为: public People( String initName, int initAge, char initGender, double initHeight, double initWeight ) { name = initName; age = initAge; gender = initGender; height = initHeight; weight = initWeight; } 一般情况下,一个类中可以有一个或者多个构造方法,它们的方法名称相同但是参数不同,相当于方法的重载。我们将在后面具体介绍方法重载。;除了构造方法外,类中还有许多描述类行为的方法,这些方法可以分为实例方法和静态方法两种。 1.实例方法 它属于每个对象,只能通过类的对象调用。 实例方法用来定义某个类的行为,也就是说类的对象所能进行的操作。 例如:在People类中,我们可以定义一个setName()方法用来改变People类某个对象的姓名,该方法内容如下。 public void setName( String newName ) { name = newName; };2.静态方法 与静态变量类似,静态方法的本质是属于整个类的,而不属于某个实例对象。 因为静态方法属于类本身,所以只要定义了类,就可以直接使用类来调用。 在使用静态方法时要注意以下几个问题: (1)使用static修饰的静态方法是属于某个类的,它在内存空间中的内容将随着类的加载而进行分配和装载,不被任何一个对象所单独拥有。 (2)静态方法不能操纵和处理属于某个对象的实例变量,也不能访问同一个类的静态方法。而只能处理属于整个类的静态变量,也就是说静态方法只能处理静态变量或者调用静态方法。 ;(3)因为静态方法不能访问实例变量,所以在静态方法中不能使用关键字this。 (4)需要调用某个静态方法时,可以使用其所属的类的名称直接调用,也可以用类的某个具体的对象名调用,其形式为: 类名.静态方法名; 或者 对象名.静态方法名; ;以下是People类完整代码: public class People { //变量定义 static String nation; //静态变量 public String name; //实例变量 public People(){ //第一种构造方法 name=“沈昕”; } public People(String sName){ //第二种构造方法(带参数的构造方法) name=sName; } public void setName(String newName){ //实例方法 name=newName; } static void setNation(String newNation){ //静态方法 nation=newNation; } };5.3 方法的使用和对象数组;5.3 方法的使用和对象数组;5.3 方法的使用和对象数

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档