华信智原_java_11.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11讲内部类与jar包的封装继承多态抽象类接口内部类包和导包权限修饰符内部类概述把类定义在其他类的内部,这个类就被称为内部类。举例:在类A中定义了一个类B,类B就是内部类。内部类的访问特点:内部类可以直接访问外部类的成员,包括私有。外部类要访问内部类的成员,必须创建对象。内部类位置按照内部类在类中定义的位置不同,可以分为如下两种格式:成员位置(成员内部类)局部位置(局部内部类)成员内部类外界如何创建内部类对象外部类名.内部类名 对象名 =new 外部类().new 内部类();成员内部类刚才我们讲解过了,成员内部类的使用,但是一般来说,在实际开发中是不会这样使用的。因为一般内部类就是不让外界直接访问的。举例讲解这个问题:Body和Heart,电脑和CPU。成员内部的常见修饰符private 为了保证数据的安全性static 为了让数据访问更方便被静态修饰的成员内部类只能访问外部类的静态成员内部类被静态修饰后的方法静态方法 非静态方法成员内部类面试题补齐程序(注意:内部类和外部类没有继承关系) class Outer { public int num = 10; class Inner { public int num = 20; public void show() { int num = 30; System.out.println(?); System.out.println(??); System.out.println(???); } } }在控制分别输出:30,20,10局部内部类可以直接访问外部类的成员可以创建内部类对象,通过对象调用内部类方法,来使用局部内部类功能局部内部类访问局部变量的注意事项:必须被final修饰?为什么呢?因为局部变量会随着方法的调用完毕而消失,这个时候,局部对象并没有立马从堆内存中消失,还要使用那个变量。为了让数据还能继续被使用,就用fianl修饰. 常量值一直都会存在.匿名内部类就是内部类的简化写法。前提:存在一个类或者接口这里的类可以是具体类也可以是抽象类。格式:new 类名或者接口名() {重写方法};本质:是一个继承了类或者实现了接口的子类匿名对象匿名内部类案例写案例,并测试如何调用方法加入方法有多个,如何调用呢?方式1:每一种格式调用一个,太麻烦方式2:用类或者接口接收该子类对象,多态思想匿名内部类在开发中的使用首先回顾我们曾经讲过的方法的形式参数是引用类型的情况,重点是接口的情况,我们知道这里需要一个子类对象。而匿名内部类就是一个子类匿名对象,所以,可以使用匿名内部类改进以前的做法。匿名内部类面试题按照要求,补齐代码 interface Inter { void show(); } class Outer { //补齐代码 } class OuterDemo { public static void main(String[] args) { Outer.method().show(); } }要求在控制台输出”HelloWorld”包包的概述其实就是文件夹作用:对类进行分类管理区分同名类包的定义及注意事项定义包的格式package 包名;多级包用.分开即可注意事项:package语句必须是程序的第一条可执行的代码package语句在一个java文件中只能有一个如果没有package,就是在一个默认包下包的类的编译和运行手动式a:javac编译当前类文件。b:手动建立包对应的文件夹。c:把a步骤的class文件放到b步骤的最终文件夹下。d:通过java命令执行。注意了:需要带包名称的执行java cn.itcast.HelloWorld自动式a:javac编译的时候带上-d即可javac -d . HelloWorld.javab:通过java命令执行。和手动式一样不同包下类之间的访问定义两个类:Demo,Test。Demo求和方法(sum)Test测试方法(main)不同包下类之间的访问导包导包概述不同包下的类之间的访问,我们发现,每次使用不同包下的类的时候,都需要加包的全路径。比较麻烦。这个时候,java就提供了导包的功能。导包格式import 包名;注意:这种方式导入是到类的名称。虽然可以最后写*,但是不建议。package,import,class有没有顺序关系(面试题)权限修饰符publicprotected默认private同一类中√√√√同一包中√√√不同包子类√√不同包其他类√类及其组成可以用的修饰符类:默认,public,final,abstract我们自己定义:public居多成员变量:四种权限修饰符均可,final,static我们自己定义:private居多构造方法:四种权限修饰符均可,其他不可我们自己定义:public 居多成员方法:四种权限修饰符均

文档评论(0)

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

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

1亿VIP精品文档

相关文档