java 包及访问权限

1.包的使用及定义
1.1包的定义
在java中,主要目的是将不同功能的文件进行分割,在之前中,所有的代码都保存在同一个目录中,如果出现同名文件,那么会发生覆盖问题,因为在同一个目录中不予许有重名文件,而在不同的目录中可以有重名文件,所谓的包实际上指的是文件夹.
1.2包的使用
在Java中使用package关键字来定义包
一旦包定义完成之后,这个类的名字就成了"cn.mldn.demo.Hello",即这是完整的类名称,而在进行编译时也需要将*.class文件保存在包中,为了开发,就提供了一个打包编译的操作.

package cn.mldn.demo;  //定义包
public class Hello{
        public static void main(String args[]){
            System.out.println("Hello World")}
        }

java -d .Hello.java
这个命名之间有空格,每一个操作含义如下:
-d :表示的是生成文件目录,根据package的定义生成.
. : 表示在当前所在的目录下生成.
此时,若执行类,必须加上包的名称,所以执行类的命令为java cn.mldn.demo.Hello,也就是说,完整类的名称就是"包.类",所有开发中,没有包的类是绝对不存在的,只要是程序一定要有包.

2.包的导入
使用包可以将大型程序拆分成不同的功能目录保存,那么这些不同的包之间也一定会存在包的导入问题,而导入程序中使用import完成,

定义了一个Message.java类,这个类的完整名称为cn.mldn.util.Message,下面在其他包引用此类.

定义类必须使用public class声明
一个包中的类想要被其他包中的类使用,那么这个类一定要定义为public class,而不能使用class声明,因为class声明的类只能够在同一个包中使用.
在这里插入图片描述
在这里插入图片描述
public class:文件名称和类名保持一致,在一个*.java文件中只能存在一个public class定义,如果一个类想要被外部包访问必须定义public.
class:文件名可以和类名称不一致,在一个*.java中可以同时存在多个class定义,并且编译完成后会形成多个*.class文件,使用class只能在一个包子访问,不同包不能访问.

3.定义Message.java类,完整名称为cn.mldn.util.Message,下面在其他包中引用.
在这里插入图片描述

定义另一个类,使用Message类,导入了包.
在这里插入图片描述
这时候上面的两个类应该是按照顺序编写
首先编写Message.java:javac -d .Message.java;
再次编写Test.java程序:javac -d .Test.java,最后输入.java cn.mldn.test.Test执行即可.

4.程序导入包使用"包.类"的完整名称,但是如果一个程序要同时导入一个包的多个类时,在分开编写很麻烦,为此可以使用通配符"*"完成导入.

在java中使用"“导入类或者是单独导入,从实际操作性能上讲是没有区别的,因为使用”"也表示只导入所需的类,不需要的不导入.
在这里插入图片描述

5.在导入包时会导入不同的包的同名类,如对于Message类,现在两个包中都有cn.mldn.util.Message和cn.mldnjava.info

定义不同包的Message类
在这里插入图片描述
在这里插入图片描述
由于需要,同时导入两个包,此时使用Message类
在实例化前使用完整的类名称(包.类)。
在这里插入图片描述

6.系统常见包如下:
在这里插入图片描述

7.四种访问权限
在这里插入图片描述

访问权限使用
属性声明以private为主
方法声明以public为主

8.方法命名规则
类名称:每一个单词的开头首字母大写 如:TestDemo
变量名称:第一个单词首字母小写,之后每个单词首字母大写 如studentName
方法名称:第一个单子首字母小写,之后每个单词的首字母大写 如printInfo();
常量名称:每个字母大写 如 FIS
包名称:所有字母小写,如cn.mldnjava.util

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值