计算机基础(17)包

​​​​​​​1.1:包的介绍

概念:

  • 包是用来分类管理类文件的。
  • 包相当于文件夹,类相当于文件。
  • 是封装的一种表现形式。

作用:

  • 为类分类。
  • 提供多层命名空间。
  • 类名的全限定名是包括其所属包的

包的定义:

  • 定义包时写在程序文件的第一行。
  • 通常使用公司的域名反写。
  • 格式:package 一级包名.二级包名…;

带包的编译:

  • 直接编译,手动创建文件夹。
  • 使用带参数的命令进行编译。
  1. javac –d . XX.java后加入包名运行即可
  1. 带包的运行:运行全限定名类。
  2. 同包访问:直接访问
  3. 跨包访问
  • 使用全限定名。
  • 除lang包外,其它包下的类需要导包后才能使用
  1. import关键字用来导包。
  2. 格式:import  全限定类名称;/ import mypack.*;
  3. 同一文件中可以导入多个包。
  • 被导入的类需要使用public修饰。
  • 通常一个文件中只定义一个类,而这个类就是使用public修饰的。
  • 如果一个文件中定义多个类,则只有一个类可以使用public修饰,且这个类的类名需要与文件名相同。

包的访问权限

public

protected

default

private

同一类中

同一包中(子类与无关类)

不同包的子类

不同包中的无关类

​​​​​​​1.2:内部类

​​​​​​​内部类简介

概念内部类又叫内置类或者嵌套类。即在类中定义的另外一个类。是一个相对概念。

  1. 内部类是符合面向对象的。如人与心脏的关系。
  2. 内部类在编译时,让会生成两个class文件。
  3. 访问特点:
  • 内部类可以直接访问外部类中的成员,包括私有成员。
  • 而外部类要访问内部类中的成员必须要建立内部类的对象。

分类:

  • 成员内部类
  • 局部内部类,
  • 匿名内部类属于局部内部类

成员内部类

  1. 成员内部类:内部类定义在成员位置。
  • 访问格式:
  1. Outer.Inner x = new Outer().new Inner();
  2. 或外部类中方法中,直接创建内部类对象调用其方法。
  • 可以被private成员修饰符修饰,保证数据安全。
  • 可以被static成员修饰符修饰,方便调用。
  • static修饰后的访问格式:
  1. Outer.Inner  x = new Outer.Inner();
  • 被static修饰的内部类只能访问外部类中的静态成员。
  • 调用静态内部类中的静态方法:
  1. Outer.Inner.method();

局部内部类

  1. 局部内部类:内部类定义在方法内。
  • 无法使用Outer.Inner进行访问。  
  • 访问格式:在所在方法内创建对象进行方法调用
  • 同时可以访问所在局部中的局部变量,但必须是被final修饰的。
  • 必须先定义再使用。

匿名内部类

  1. 匿名内部类概念:
  • 在通过简写形式定义一个没有类名的类。
  • 在创建一个对象。
  • 匿名内部类即将匿名定义类与创建对象的动作一起完成。
  • 匿名内部类属于局部内部类。
  • 定义格式:
  1. 匿名内部类需要先定义再使用。
  2. 匿名内部类是一种多态的表现形式。
  3. new 类名或者接口名(){覆盖类或者接口中的代码,(也可以自定义内容。)};
  • 使用场景:
  1. 内部类效率更高。
  2. 通常在使用接口类型参数的方法上,并该接口中的方法不超过三个时,可以将匿名内部类作为参数传递。
  3. 增强阅读性。

(以上:就是包,接下来我们讲常用APL)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

这名字tmd真难取

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值