T深入Java类.pptVIP

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
T深入Java类.ppt

深入Java类 目 标 类的访问限制 类的封装 嵌套类与内部类 类的继承 方法的重写 访问权限 java中四种不同的限定词限定的成员(成员变量或成员方法),访问权限由大到小依次为: 1、public 公共的 可以被所有的类访问。 2、protected 受保护的 可以被这个类本身访问。 被它的子类(同一个包以及不同包中的子类)访问。 同一个包中的所有其他的类访问。 3、默认的/友好的 被这个类本身访问。 被同一个包中的类访问。 4、private 私有的 只能被这个类本身访问。 如果一个类的构造方法声明为private,则其它类不能生成该类的一个实例。 java中类的限定词的作用范围比较 实现类的封装 封装:将成员变量声明为私有的(private),再提供一个或多个公有(public)setXX() 和getXX()方法实现对该成员变量的访问和修改。 类中的私有成员变量/成员方法只能在该类内部调用,不能通过该类的对象调用。 封装的目的 隐藏类的实现细节; 让使用者只能通过指定的方法访问数据,可以方便加入控制逻辑,限制不合理的操作; 便于修改,增强代码可维护性; 可进行数据检查。 内部类(nested classes) 将一个类定义置入另一个类定义中就叫作“内部类”。 利用它可对那些逻辑上相互联系的类进行分组 并可控制一个类在另一个类里的“可见性”。 内部类对象保存了一个对外部类对象的引用。 OuterClassName.this代表外部类对象的引用 InnerClassName.this代表内部类对象的引用 内部类 –类中定义的内部类 class Outer{ int outer_i = 100; void test(){ Inner in = new Inner(); in.display(); } class Inner{ void display(){ System.out.println(display: outer_i = + outer_i); } } } 内部类 –类中定义的内部类 内部类 –类中定义的内部类 类中定义的内部类特点 1、内部类可以直接访问外部类的成员,反之则不行。 2、内部类可以声明为private或protected。 3、内部类成员只有在内部类的范围之类是有效的。 private内部类调用方式: 在外部类的方法中实例化内部类,并调用自己的方法 实例化外部类,并调用包含内部类的方法 static内部类 定义格式 修饰符 static class name{ } static内部类特点: static内部类可以象一个普通外部类一样直接创建该对象。 static内部类只能访问外部类中的静态成员或方法。 static内部类可以声明static成员,但非static的内部类不可以。 修饰符没有任何限制。 static内部类 public class StaticInnerDemo { String name = Tom; void PrintName(){ System.out.println( Outer name : +name); } public static class Inner{ int age = 10; void PrintAge(){ System.out.println( inner age : +age); } } public static void main(String[ ] args) Inner inner = new Inner(); inner.PrintAge(); } } 内部类如何被外部类引用 将内部类声明为非private的就可以通过外部类创建一个内部类的对象引用,并可通过该引用调用内部类自己定义的方法。 声明调用方法: OuterClass outer = new OuterClass(); OuterClass.InnerClass inner = outer.new InnerClass (); 方法和作用域中的内部类 内部类并非只能在类里定义,也可以在几个程序块的范围之内定义内部类。 特点: 可访问外部类的成员变量。 只能访问所在方法中的final类型的局部变量,因为用final定义的局部变量相当于一个常量,它的生命周期超出方法运行的生命周期。 该类型的内部类调用方法: 直接通过外部类来调用内部类所在的方法。 OuterClass.innerOfOuterMethod( ); 方法和作用域中的内部类

文档评论(0)

000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档