面向对象的java实现-封装培训讲学.ppt

面向对象的java实现-封装培训讲学.ppt

ID:59942454

大小:1.23 MB

页数:28页

时间:2020-11-28

面向对象的java实现-封装培训讲学.ppt_第1页
面向对象的java实现-封装培训讲学.ppt_第2页
面向对象的java实现-封装培训讲学.ppt_第3页
面向对象的java实现-封装培训讲学.ppt_第4页
面向对象的java实现-封装培训讲学.ppt_第5页
资源描述:

《面向对象的java实现-封装培训讲学.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、面向对象的Java实现-封装就业技能结构图2课程目标学完本门课程后,你能够熟练使用OO思想编写Java程序深刻理解并运用继承和接口深刻理解并运用异常处理程序错误3相关课程回顾publicclassTest{publicstaticvoidmain(String[]args){for(inti=0;i<10;i++){System.out.println(i);}System.out.println(i==10);}}请举例说明类与对象的区别与联系超出了变量i的访问范围请指出下列Java代码中存在的错误,并改正。4预习检查举例说明什么是方法重载?Java中的构造方法

2、与实例方法,有什么区别?5本章任务输出教员的自我介绍:对属性进行封装用构造方法实现对象成员的初始化对构造方法进行重载6理解封装的概念掌握private关键字掌握构造方法掌握方法重载本章目标7为什么需要封装2-1编写一个类,代表某个教员,要求:具有属性:姓名、年龄具有行为:自我介绍教员的最小年龄要求:22岁publicclassTeacher1{publicStringname;//教员姓名publicintage;//年龄/***返回自我介绍的内容*/publicStringintroduction(){return"大家好!我是"+name+",我今年"+age

3、+"岁";}}8为什么需要封装2-2编写一个测试类,要求:实例化一个教员对象,并对其初始化在控制台输出该教员的自我介绍publicclassTeacher1Test{publicstaticvoidmain(String[]args){AccpTeacher1teacher=newAccpTeacher1();teacher.name="李芳";teacher.age=10;System.out.println(teacher.introduction());}}要满足教员的最小年龄要求,可以通过对属性的封装来实现大家好!我是李芳,我今年10岁9什么是封装publ

4、icclassTeacher2{privateStringname;//教员姓名//返回教员姓名publicStringgetName(){returnname;}//设定教员姓名publicvoidsetName(Stringname){this.name=name;}}封装,就是隐藏实现细节将属性私有化,提供公有方法访问私有属性通过这些公有方法访问私有属性Teacher2teacher=newTeacher2();teacher.setName("李芳");StringtName=teacher.getName();通过setter、getter方法访问nam

5、e属性this代表当前类的实例10如何实现封装2-1封装的实现:1、修改属性的可见性来限制对属性的访问2、为每个属性创建一对赋值(setter)方法和取值(getter)方法,用于对这些属性的访问3、在setter和getter方法中,加入对属性的存取限制publicclassTeacher3{privateStringname;//教员姓名privateintage;//年龄publicintgetAge(){returnage;}publicvoidsetAge(intage){if(age<22){System.out.println("错误!最小年龄应为2

6、2岁!");this.age=22;//如果不符合年龄要求,则赋予默认值}else{this.age=age;}}//此处省略对name属性的setter、getter方法}12311如何实现封装2-2publicclassTeacher3Test{publicstaticvoidmain(String[]args){Teacher3teacher=newTeacher3();teacher.setName("李芳");teacher.setAge(10);System.out.println(teacher.introduction());}}使用封装,增加了数

7、据访问限制,增强了程序的可维护性错误!最小年龄应为22岁!大家好!我是李芳,我今年22岁测试类通过调用setter方法,为对象的各个属性赋值12小结1使用private关键字修饰某个成员变量后,这个成员变量可以被同一包中的其它类访问吗?在Java程序中,代码封装带给我们的好处是什么?13小结2请通过代码封装,实现如下需求:编写一个类Book,代表教材:具有属性:名称(title)、页数(pageNum),其中页数不能少于200页,否则输出错误信息,并赋予默认值200为各属性设置赋值和取值方法具有方法:detail,用来在控制台输出每本教材的名称和页数编写测试类Bo

8、okTes

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。