清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第9章 管理类别档案

第9章 管理类别档案 内部类别 package simport
第9章 • 管理类别档案 – 内部类别 – package与import

成员内部类别、区域内部类别 成员内部类别,基本上是在一个类别中直 接宣告另一个类别 public class outerclass i //内部类别 private class InnerClass i // 所产生的文件名为「外部类别名称$内部类 别名称cass
成员内部类别、区域内部类别 • 成员内部类别,基本上是在一个类别中直 接宣告另一个类别 • 所产生的文件名为「外部类别名称$内部类 别名称.class」 public class OuterClass { //内部类别 private class InnerClass { // .... } }

成员内部类别、区域内部类别 区域内部类别定义于一个方法中,类别的 可视范围与生成之对象仅止于该方法之中 内部类别还可以被宣告为" static“ 由于是“ static”,它不能存取外部类别的方 法,而必须透过外部类别所生成的对象来 进行呼叫
成员内部类别、区域内部类别 • 区域内部类别定义于一个方法中,类别的 可视范围与生成之对象仅止于该方法之中 • 内部类别还可以被宣告为"static“ • 由于是“static”,它不能存取外部类别的方 法,而必须透过外部类别所生成的对象来 进行呼叫

成员内部类别、区域内部类别 被宣告为 static的内部类别,事实上也可以 看作是另一种名称空间的管理方式 public class outer public static class Inner i Outer Inner inner new Outer Inner(
成员内部类别、区域内部类别 • 被宣告为static的内部类别,事实上也可以 看作是另一种名称空间的管理方式 public class Outer { public static class Inner { .... } .... } Outer.Inner inner = new Outer.Inner();

匿名内部类别 内部匿名类别可以是继承某个类别或是实 作某个接口 new[类别或接口()]{ //实作 Object obj new Object() i public string tostring()(//重新定义 tostring() return"匿名类别物件" System. out. println(obj)
匿名内部类别 • 内部匿名类别可以是继承某个类别或是实 作某个接口 new[类别或接口()] { //实作 } Object obj = new Object() { public String toString() { //重新定义toString() return"匿名类别物件"; } }; System.out.println(obj);

匿名内部类别 注意如果要在内部匿名类别中使用外部的 局部变量,变量在宣告时必须為"fna" public void someMethod()( finalist x=10;//宣告fina1 Object obj new Object ( public string tostring() return string. valueof(x);//x可在匿名类别中使用 System. out. println(obj)i
匿名内部类别 • 注意如果要在内部匿名类别中使用外部的 局部变量,变量在宣告时必须為"final" .... public void someMethod() { finalint x = 10; //宣告final Object obj = new Object() { public String toString() { return String.valueOf(x); //x可在匿名类别中使用 } }; System.out.println(obj); }

匿名内部类别 局部变量ⅹ并不是真正被拿来于内部匿名类 别中使用 会被匿名类别复制作为数据成员来使用 编译程序会要求您加上“fina"矢键词,这 样您就知道不能在内部匿名类别中改变X的 值 内部匿名类别在编译完成之后会产生「外 部类别名称$编号cass」,编号为1、2 3.n,每个编号n的档案对应于第n个匿名 类别
匿名内部类别 • 局部变量x并不是真正被拿来于内部匿名类 别中使用 • x会被匿名类别复制作为数据成员来使用 • 编译程序会要求您加上“final”关键词,这 样您就知道不能在内部匿名类别中改变x的 值 • 内部匿名类别在编译完成之后会产生「外 部类别名称$编号.class」,编号为1、2、 3...n,每个编号n的档案对应于第n个匿名 类别

设定包( package) 包被设计与文件系统结构相对应 为了要能建立与包相对应的文件系统结构 您在编译时可以加入"d"参数,并指定产生 的类别档案要储存在哪一个目录之下 package onlyfun caterpillar public class PackageDemo I public static void main (string[] args) System. out. println("Hello! World!")i
设定包(package) • 包被设计与文件系统结构相对应 • 为了要能建立与包相对应的文件系统结构, 您在编译时可以加入"-d"参数,并指定产生 的类别档案要储存在哪一个目录之下 package onlyfun.caterpillar; public class PackageDemo { public static void main(String[] args) { System.out.println("Hello! World!"); } }

设定包( package) javac-d. UsePackage java 在目前的工作位置中会出现 onlyfun目录 之下会有个 caterpillar目录,而当中有個 Package Demo class档案 ¨ package的设定会成为类别名称的一部 完整类别名 onlyfun. caterpillar. PackageDemo java onlyfun. caterpillar. PackageDemo
设定包(package) • javac -d . UsePackage.java • 在目前的工作位置中会出现onlyfun目录, 之下会有个caterpillar目录,而当中有個 PackageDemo.class档案 • “package”的设定会成为类别名称的一部 份 – 完整类别名onlyfun.caterpillar.PackageDemo – java onlyfun.caterpillar.PackageDemo

设定包( package) °「完全描」( Fullyqualified)名称 一完整的指出「包加类别」名称 onlyfun. caterpillar Point2D pl =new onlyfun. caterpillar Point2D(10, 20) 最后编译完成的.cass栏案必须放在 onlyfun 目录的 caterpillar目录下 bad class file: .Point2D. classclass file contains wrong class: onlyfun. caterpillar. Point2DPlease remove or make sure it appears in the correct subdirectory of the classpath Point2D p1 new Point2D(10, 20) A1 error
设定包(package) • 「完全描述」(Fullyqualified)名称 – 完整的指出「包加类别」名称 • 最后编译完成的.class档案必须放在onlyfun 目录的caterpillar目录下 onlyfun.caterpillar.Point2D p1 = new onlyfun.caterpillar.Point2D(10, 20); bad class file: .\Point2D.classclass file contains wrong class: onlyfun.caterpillar.Point2DPlease remove or make sure it appears in the correct subdirectory of the classpath. Point2D p1 = new Point2D(10, 20); ^1 error
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第8章 继承、多型.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第7章 封装.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第6章 字串.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第5章 数组.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第4章 从autoboxing、unboxing认识对象.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第3章 语法入门.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第2章 入门准备.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第1章 了解Java.ppt
- 《Oracle数据库基础教程》教学资源(PPT课件讲稿)第1章 oracle数据库概述.ppt
- 《Oracle数据库基础教程》教学资源(PPT课件讲稿)第16章 基于Oracle数据库的应用开发.ppt
- 《Oracle数据库基础教程》教学资源(PPT课件讲稿)第15章 PLSQL程序设计.ppt
- 《Oracle数据库基础教程》教学资源(PPT课件讲稿)第14章 SQL语言基础.ppt
- 《Oracle数据库基础教程》教学资源(PPT课件讲稿)第13章 网络管理.ppt
- 《Oracle数据库基础教程》教学资源(PPT课件讲稿)第12章 数据库备份与恢复.ppt
- 《Oracle数据库基础教程》教学资源(PPT课件讲稿)第11章 安全管理.ppt
- 《Oracle数据库基础教程》教学资源(PPT课件讲稿)第10章 模式对象.ppt
- 《Oracle数据库基础教程》教学资源(PPT课件讲稿)第9章 数据库的启动与关闭.ppt
- 《Oracle数据库基础教程》教学资源(PPT课件讲稿)第8章 数据库实例与操作模式.ppt
- 《Oracle数据库基础教程》教学资源(PPT课件讲稿)第7章 逻辑存储结构.ppt
- 《Oracle数据库基础教程》教学资源(PPT课件讲稿)第6章 物理存储结构.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第10章 例外处理.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第11章 枚举类型.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第12章 泛型(Generics).ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第13章 对象容器.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第14章 输入、输出.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第15章 线程.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第16章 反射.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第17章 Annotation.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第18章 舍遗补缺.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第19章 文本编辑器.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第20章 JDBC入门.ppt
- 清华大学出版社:《java学习笔记》教学资源(PPT课件,JDK6课件和课本代码)第21章 Java SE6新功能简介.ppt
- 《C语言程序设计》课程教学资源(PPT课件)PPT课件 第五章 数组.ppt
- 南开大学:《上机试习题集—二级C语言程序设计》PDF电子书(编程和改错各100例).pdf
- 《Flash动画设计教程》PPT教学课件(共五章).ppt
- 陕西科学技术出版社:《计算机基础实用教程》PDF电子书(共六章).pdf
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第七章 系统设计.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第一章 绪论(主讲:郑莉).ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十章 C++标准模板库.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十一章 流类库与输入/输出.ppt