方法、属性和包

上传人:ji****n 文档编号:54298892 上传时间:2018-09-10 格式:PPT 页数:23 大小:649KB
返回 下载 相关 举报
方法、属性和包_第1页
第1页 / 共23页
方法、属性和包_第2页
第2页 / 共23页
方法、属性和包_第3页
第3页 / 共23页
方法、属性和包_第4页
第4页 / 共23页
方法、属性和包_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《方法、属性和包》由会员分享,可在线阅读,更多相关《方法、属性和包(23页珍藏版)》请在金锄头文库上搜索。

1、第五讲,变量作用域和方法定义,2,理解变量作用域 会定义和使用类的方法 理解方法重载和认识构造方法 对象的内存模型,本章目标,3,类的方法,写出狮子对象的“跑”方法 写出狮子对象的“叫”方法,电动玩具狮子 属性: 颜色:黄色行为: 跑 叫,按此按钮, 狮子开始跑,4,1 类的方法示例,public class AutoLion String color = “黄色“;public void run()System.out.println(“正在以0.1米/秒的速度向前奔跑“); public String bark()String sound = “吼“ ; return sound; ,Au

2、toLion类代码实现,方法名称,方法体,返回类型,5,1.1如何定义类的方法,类的方法定义类的某种行为(或功能),方法的名称,方法的主体,方法返回的数据类型,定义类的方法,public 返回值类型 方法名() /这里编写方法的主体,步骤一:定义方法名以及返回值,步骤二:编写方法体,6,1.2方法的命名,如何给方法起名字? 必须以字母、_或开头 可以包括数字,但不能以它开头遵循的命名规范 通常方法名是一个动词,如果有两个以上单词组成,第一个单词的首字母小写,其后单词首字母大写,7,1.3方法的返回值,两种情况 如果方法具有返回值,方法中必须使用关键字return返回该值,返回类型为该返回值的类

3、型如果方法没有返回值,返回类型为void,public class StudentString name = “张三“;public void getName()return name; ,返回类型要匹配,return 表达式;,编译错误,8,1.4方法调用,方法是个“黑匣子”,完成某个特定的应用程序功能,并返回结果 方法调用:执行方法中包含的语句,对象名.方法名();,小明过生日,爸爸送他一个电动狮子玩具,编程测试这个狮子能否正常工作,演示示例1:演示运行效果,9,方法调用,public class AutoLion String color = “黄色“;public void run()

4、 /方法1:跑System.out.println(“正在以0.1米/秒的速度向前奔跑。“);public String bark() /方法2:叫String sound = “吼“ ; return sound; public String getColor() /方法3:获得颜色属性return color;public String showLion() /方法4:描述狮子特性return “这是一个“ + getColor() + “的玩具狮子!“ ; ,public class TestLion public static void main(String args) AutoLi

5、on lion = new AutoLion();System.out.println(lion.showLion(); lion.run();System.out.println(lion.bark(); ,在类的方法中调用 该类另一个方法,在main()方法中 调用类的方法,10,方法调用小结,方法之间允许相互调用,不需要知道方法的具体实现,提高了效率,11,2 变量作用域,public class AutoLion String color = “黄色“;public void run() /方法1:跑System.out.println(“正在以0.1米/秒的速度向前奔跑。“);pub

6、lic String bark() /方法2:叫String sound = “吼“ ; return sound; public String getColor() /方法3:获得颜色属性return color ;public String showLion() /方法4:输出类的描述信息return “这是一个“ + getColor() + “的玩具狮子!叫声是“ + sound ; ,可以调用吗?,12,2.1变量作用域,变量声明的位置决定变量作用域 变量作用域确定可在程序中按变量名访问该变量的区域,for(int i = 0, a = 0; i 4; i+)a+; System.o

7、ut.println(a);,a的作用域仅在for循环中,代码错误,13,2.2变量作用域,变量1类型 变量1; 变量2类型 变量2; 变量3类型 变量3;,public 返回类型 方法1()变量4类型 变量4; public 返回类型 方法2()变量5类型 变量5; ,public class AutoLion,AutoLion类的方法 别的类的方法,谁能使用这些变量?,方法1,方法2,成员变量,局部变量,局部变量,14,3.1创建对象,创建一个对象包括对象的声明和为对象分配内存两个步骤。 (1)对象的声明。 一般格式为:类的名字 对象名字; 如: AutoLion lion;,15,(2)

8、为声明的对象分配内存使用new运算符和类的构造方法为声明的对象分配内存,如果类中没有构造方法,系统会调用默认的构造方法(默认的构造方法是无参数的,你一定还记得构造方法的名字必须和类名相同这一规定)。如:lion=new AutoLion();,16,声明对象时的内存模型,当用AutoLion类声明一个变量,即对象lion时,内存模型如右图所示,17,对象分配内存后的内存模型,当系统见到: lion=new AutoLion(); 时,就会做两件事: 为color,speed变量分配内存,即AutoLion类的成员变量被分配内存空间,然后执行构造方法中的语句。 new运算符在为变量color,s

9、peed分配内存后,将返回一个引用给对象变量lion。,18,3.2使用对象,对象不仅可以操作自己的变量改变状态,而且还拥有了使用创建它的那个类中的方法的能力,对象通过使用这些方法可以产生一定的行为。 通过使用运算符“.”,对象可以实现对自己的变量访问和方法的调用。 当对象调用方法时,方法中出现的成员变量就是指该对象的成员变量。,19,3.3对象的引用和实体,当用类创建一个对象时,类中的成员变量被分配内存空间,这些内存空间称做该对象的实体,而对象中存放着引用,以确保实体由该对象操作使用。 一个类创建的两个对象,如果具有相同的引用,那么就具有完全相同的实体。 没有实体的对象称作空对象,空对象不能

10、使用,即不能让一个空对象去调用方法产生行为。,20,3.4参数传值,当方法被调用时,如果方法有参数,参数必须要实例化,即参数变量必须有具体的值。在Java中,方法的所有参数都是“传值”的,也就是说,方法中参数变量的值是调用者指定的值的拷贝。例如,如果向方法的int型参数x传递一个int值,那么参数x得到的值是传递值的拷贝。方法如果改变参数的值,不会影响向参数“传值”的变量的值。,21,基本数据类型参数的传值,对于基本数据类型的参数,向该参数传递的值的级别不可以高于该参数的级别,比如,不可以向int型参数传递一个float值,但可以向double型参数传递一个float值。,22,引用类型参数的传值,Java的引用型数据包括对象、数组和接口。当参数是引用类型时,“传值”传递的是变量的引用而不是变量所引用的实体。 如果改变参数变量所引用的实体,就会导致原变量的实体发生同样的变化。但是,改变参数的引用不会影响向其传值的变量的引用。,23,总结,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 初中教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号