javaSE复习之——面向对象_包与权限修饰符

包的意义

我们以后开发程序都是把源码写在一个个的源文件里面,而不是在一个文件中创建很多的类,包的用处就在这里,说白了包就是为了封装。

定义包的格式

1
2
package 包名;
多级包用“.”分开
  • 例子:
    1
    package java.util.Scanner;
    在这里当然也可以把Scanner*代替,*就是通配符,表示该目录下的所有包,但是效率没有导入具体的类高,因为需要遍历该包所有类。
    ps:在开发中一般都不使用
    ,而是导入具体的类

定义时的注意事项

1、必须是程序的第一条可执行语句
2、package在一个java文件中只能有一个
3、包名的格式为域名倒写

  • 例:com.aikan0.add
    这个add就是这个包的作用。

生成包命令

1
javac -d  . 源文件名
  • ps:了解一下就好了

面试题——package、import、class有没有顺序关系?

  • 解答:

    有,并且package > import > class

权限修饰符

  • 四种权限修饰符
本类同一个包下(子类和无关类)不同包下(子类)不同包下(无关类)
privateY
默认YY
protectedYYY
publicYYYY

ps:protected表示受保护的,就是保护权限只给给自己的子类,一般不用在变量,而是用在成员变量或者成员方法