1 / 26
文档名称:

【源代码】第10章、面向对象的Java实现-封装.ppt

格式:ppt   页数:26
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

【源代码】第10章、面向对象的Java实现-封装.ppt

上传人:紫岑旖旎 2012/8/24 文件大小:0 KB

下载得到文件列表

【源代码】第10章、面向对象的Java实现-封装.ppt

文档介绍

文档介绍:软件开发 -----语言篇
/
面向对象的Java实现-封装
第十章
/
相关课程回顾
public class Test {
public static void main(String[] args) {
for(int i=0;i<10;i++){
(i);
}
(i==10);
}
}
请举例说明类与对象的区别与联系。
超出了变量i的访问范围
请指出下列Java代码中存在的错误,并改正。
/
回顾问题
举例说明什么是方法重载?
Java中的构造方法与实例方法,有什么区别?
/
本章任务
升级Hello,输出教员的自我介绍:
对属性进行封装
用构造方法实现对象成员的初始化
对构造方法进行重载
/
理解封装的概念
掌握private关键字
掌握构造方法
掌握方法重载
学习目标
/
为什么需要封装 2-1
编写一个类,代表教员,要求:
具有属性:姓名、年龄
具有行为:自我介绍
教员的最小年龄要求:22岁
public class Teacher1{
public String name; // 教员姓名
public int age; //年龄
/**
* 返回自我介绍的内容
*/
public String introduction() {
return "大家好!我是" + name + ",我今年"+ age+"岁";
}
}
/
为什么需要封装 2-2
编写一个测试类,要求:
实例化一个教员对象,并对其初始化
在控制台输出该教员的自我介绍
public class Teacher1Test {
public static void main(String[ ] args) {
Teacher1 teacher = new Teacher1();
= "李芳";
=10;
(());
}
}
要满足教员的最小年龄要求,可以通过对属性的封装来实现
大家好!我是李芳,我今年10岁
/
什么是封装
public class Teacher2 {
private String name; // 教员姓名
// 返回教员姓名
public String getName() {
return name;
}
// 设定教员姓名
public void setName(String name) {
= name;
}
}
封装,就是隐藏实现细节
将属性私有化,提供公有方法访问私有属性
通过这些公有方法访问私有属性
Teacher2 teacher = new Teacher2();
("李芳");
String tName = ();
通过setter、getter方法访问name属性
this代表当前类的实例
/
如何实现封装2-1
封装的实现:
1、修改属性的可见性来限制对属性的访问
2、为每个属性创建一对赋值(setter)方法和取值(getter) 方法,用于对这些属性的访问
3、在setter和getter方法中,加入对属性的存取限制
public class Teacher3 {
private String name; // 教员姓名
private int age; //年龄
public int getAge() {
return age;
}
public void setAge(int age) {
if (age<22) {
("错误!最小年龄应为22岁!");
= 22; //如果不符合年龄要求,则赋予默认值
} else {
= age;
}
}
//此处省略对name属性的setter、getter方法
}
1
2
3
/