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

第四讲Java面向对象高级特性.ppt

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 Java面向对象高级特性 本章要点 Static 、final关键字 抽象类 接口 包 内部类 访问控制 其它 §5.1 static关键字 用static(静态的)修饰的变量或方法又称为类变量和类方法。 类变量(静态变量) 在成员变量声明时使用static关键字。 注意点: 类变量只在系统加载其所在类时分配空间并 初始化,实例化对象时不再分配空间,所有 实例对象将共享类的静态变量。 用途 可以用来在实例对象之间进行通信 类似于其他语言中的全局变量,可以用类 名直接调用。 如: Count.counter 例题5-1 static成员变量举例(P115) 类方法(静态方法) 在类的成员方法声明中带有static关键字, 访问时可通过类名访问 例题5-2 static方法举例(P117) 注意点 静态方法只能访问方法体内定义的局部变量、自己的参数和静态变量。(因静态方法不是通过调用对象实例,故在静态方法中没有this指针) 子类不能重写父类的静态方法,不能将非静态方法重写为静态的方法。 main() 是一个静态方法,是程序的入口点可以使JVM不创建实例对象就可以运行方法。 静态初始化程序 类中不属于任何方法体中,并以static关键字修饰的语句块。 如: static{ I=5; System.out.println(“Static code:I=”+I++) ; } 注意 静态语句块只在加载类时执行一次,通常用来 进行类成员变量的初始化。 例题5-3:静态语句块与静态变量的访问。 5.2 final关键字 在Java中,可以用final关键字声明类、成员 方法、成员变量。 被定义成final的类不能再派生子类如: Java.lang.String为一个final类。 被定义为final的方法不能重写,优点是在运行时进行效率优化。 被定义为final的变量只能被赋值一次,常 用来定义常量,变量名一般大写。 例题5-4 final 变量在构造方法中赋值 5.3抽象类 抽象方法 只有定义而没有方法体的方法。 抽象类 包含一个或多个抽象方法的类。 定义抽象类的格式为: abstract class 抽象类名{ …… } 注意点 抽象类不能实例化。可派生子类,在子类中 具体定义方法的功能。 Employee e=new Manager(); //正确 Employee e=new Employee(); //错误 5.4 接口 接口定义格式: [修饰符]interface接口名[extends 父接] { 接口体; } 修饰符为public时,指明任何类均可以使 用这个接口。 修饰符缺省时,只有与该接口定义在同一 个包中的类才可以访问该接口 接口的实现与使用 implements 关键字用来表示实现某个接口, 在类体中可以使用接口中定义的常量,且须 实现接口中定义的所有方法。 一个类可以实现多个接口,在implements中 用“,” 分隔。例如: 多重继承 Java中规定一个类只能继承一个父类,但可以实现多个接口, Java是利用接口实现多重继承的。 通过继承扩展接口 通过创建接口的子接口来增加新的方法。 如: 接口与抽象类 两者有一定的相似,又有区别 接口中方法都是抽象的,而抽象类中可以定义带有方法体的不同方法 一个类可以实现多个接口,而只可继承一个抽象父类 接口不是类体系的一部分,即与实现它的类不构成继承体系。抽象类通常位于类体系顶层。 接口可用于多重继承。 5.5 包 包的概念 Java中包是相关类与接口的一个集合,它提供了命名空间的管理和访问。包具有特定的访问控制权限。 Java中编译器把包对应于文件系统的目录和文件管理,还可以使用压宿文件的格式存储。 JDK中提供的包有 Java.applet Java.awt Java.event等。 例如:名为 Java.applet的包中,所有类文件都存储在目录 classpath\java\applet 下,这里classpath由环境变量来设定。 包机制的优点 易根据包中类的功能找到所需要的类,包中的类是相关的。 每个包都是命名空间,不同包中类的名字不冲突。 同一

文档评论(0)

jdy261842 + 关注
实名认证
内容提供者

分享好文档!

1亿VIP精品文档

相关文档