欢迎来到天天文库
浏览记录
ID:16834156
大小:395.00 KB
页数:68页
时间:2018-08-25
《《java 2面向对象程序设计基础》包、接口和异常ppt68》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章包、接口和异常(时间:3次课,6学时)第5章包、接口和异常教学提示:Java将相关的类组成包,有助于大型软件系统的管理。接口的设计和调用也是Java程序设计的重要技术。对各种异常的处理是程序设计中要解决的重要问题。Java采用了一种特殊的机制来处理异常。本章主要介绍:和类相关的两个概念:包、接口,同时在最后还将介绍Java对异常的处理方法。第5章包、接口和异常5.1包5.2接口5.3异常及其处理5.4创建自定义的异常5.5课后练习5.1包5.1.1Java包的用途5.1.2访问包成员5.1.3源文件的布局5.1.4classpath参数5.
2、1包尽管类具有强大的功能,但仅仅一个类或少量的几个类根本无法满足应用程序的需要。通常的应用程序可能需要几十个类,复杂的应用程序需要上百个、甚至更多的类。Java将相关的类组成包,有助于大型软件系统的管理。5.1.1Java包的用途1.包的建立方法Java包通过package语句建立,基本语法是:package<顶层包名>[.子包名];例如:packagecn.edu.jmu.graphics;在定义类或接口的源文件开始处,通过package语句,可以将相应的类或接口放入package所声明的包里。包是相关类和接口的集合,提供了访问级别控制和命名空
3、间管理。5.1.1Java包的用途2.包的使用方法每个源文件只能有一个包声明,并且一定要求放在源文件的开始位置。如果一个源文件没有包语句,则源文件所定义的类或接口被系统放入默认包中。包有层次,层次间由点分隔。通过创建和使用包,程序员不仅可以很容易地确定哪些类和接口是相关的,也可以很容易地找到提供特定功能的类和接口,例如,与画图有关的类和接口在graphics包中。5.1.1Java包的用途3.包的访问权限通过声明类的访问级别,可以控制对类的访问权限。类的访问级别分为默认级和public级。定义类的默认访问级别不需要任何关键字,被声明为默认级的类只
4、对同一个包中的类是可视的。也就是说,只有同一个包内的类实例可以访问这个类,外界不能访问它。如果用关键字public定义类,不但同一个包里的其他类可以访问这个类,其他包中的类也可以访问它。换句话说,同一个包中的类,相互之间有不受限制的访问权限。而在不同包中,只有public类可被访问。5.1.1Java包的用途除public修饰符之外,用于访问控制的修饰符还有protected和private。protected或private仅用来定义方法或变量的访问控制级别。protected方法或protected变量仅对同一个包内的类或不同包中的子类来说是
5、可视的。private方法和private变量对外部定义的类均不可视。表5-1表示了访问控制修饰符的使用范围和相应访问级别。需要说明的是,通常不建议采用默认方式定义方法或成员变量的访问级别。5.1.1Java包的用途表5-1访问控制表5.1.1Java包的用途4.包的命名方式包提供了新的命名空间,既使所定义的类使用与其他包中的类相同的名字,只要同名类所属的包不同名,就不会引起冲突。原因是这些类的全程限定名称不同。类的全程限定名包含了类的各层包名。这实质上是应用了面向对象的概念,将类封装入包中。Java建议反转Internet域名为包名。如域名为:
6、www.jmu.edu.cn,包命名可以cn.edu.jmu开始,例如建立包cn.edu.jmu.timer,创建类cn.edu.jmu.timer.Time。5.1.2访问包成员对于包来说,只有它的public成员可被外界访问。若外界想要访问包的public类,有3种方式可以实现。(1)通过类的全程限定名访问该类。(2)通过import语句导入该类。(3)通过import语句导入整个包。如果某个类只被访问一次,那么可以直接使用类的全名。5.1.2访问包成员虽然可以用import语句导入一个包,但是否可以访问包中的类,还取决于该类的访问级别。需要
7、再次强调的是,只有包的public成员才对外界是可视的,参见表5-1。为了方便程序员开发,Java运行时系统自动导入3个完整的包:(1)默认包,默认包没有名字。(2)java.lang包。(3)当前所用。5.1.3源文件的布局Java平台依靠分级文件系统管理Java源文件和字节码文件。Java源文件是以.java为扩展名的文本文件。每个源文件称为一个编译单元,每个编译单元中有一个或者多个类,但至多只能有一个public类,并且源文件必须与public类同名。源文件存放的文件目录映射着相应类所属的包。例如:类Rectangle的文件名Rectang
8、le.java,这个文件将被放置在名为graphics的子目录下。graphics目录可以存在于文件系统的任意位置,如图5.1所示。5.
此文档下载收益归作者所有