关于java语言当中的包机制:

1.包又称为package,java中引入package这种语法机制主要是为了方便程序的管理。不同功能的类被分门别类放到不同的软件包当中,查找比较方便,管理比较方便,易维护

2.怎么定义package?

在java源程序的第一行上编写package语句

package只能编写一个语句

语法结构:package 包名;

3.包名的命名规范:

公司域名倒序 + 项目名 + 模块名 + 功能名;

采用这种方式重名的几率比较低。因为公司域名具有全球唯一性。

例如:com.bjheima.oa.user.service;org.apache.tomcat.core;

4.包名要求全部小写,包名也是标识符,必须遵守标识符的命名规则

5.一个包对应一个目录

6.使用了package机制之后,应该怎么解释?怎么运行?

使用了package机制之后,类名不再是Test01了。类名是:com.bjheima.java.newstudy.Test01

编译:javac java源文件路径(在硬盘上生成一个class文件:Test01.class)

手动方式创建目录,将Test01.class字节码文件放到指定的目录下

运行:java com.bjheima.javase.newstudy.Test01

另一种方式编译(编译 + 运行):

编译:

javac -d 编译之后存放路径 java源文件的路径

例如:将F:\Hello.java文件编译之后放到C:\目录下

javac -d C:\ F:\Hello.javajavac -d . *.java

将当前路径中*.java编译之后存放到当前目录下

运行:JVM的类加载器ClassLoader默认从当前路径下加载。

保证Dos命令窗口的路径先切换到com所在的路径,执行:

java com.bjheima.javase.newstudy.Test01

7.import语法格式:

import 类名;import 包名.*import语句需要编写到package语句之下,class语句之上。

示例代码01:

package com.bjheima.newstudy.packagetest;public class Test01{public static void main(String[] args){System.out.println("Test01's main method excute!");}
}

示例代码02:

package com.bjheima.newstudy.packagetest;
public class  Test02{public static void main(String[] args){//完整类名是: com.bjheima.newstudy.packagetest.Test01com.bjheima.newstudy.packagetest.Test01 t = new com.bjheima.newstudy.packagetest.Test01();System.out.println(t);//可以省略包名,因为Test01和Test02在同一个软件包当中Test01 tt = new Test01();System.out.println(tt);}
}

运行结果:

示例代码03:

package com.bjheima;public class Test03{public static void main(String[] args){/*  创建Test01对象以下代码编译器错误:当省略包名之后,会在当前包下找Test01实际上编译器去找:com.bjheima.Test03了。这个类不存在。Test01 tt = new Test01();System.out.println(tt); *///修改以上的错误//包名不要省略,添加包名com.bjheima.newstudy.packagetest.Test01 tt = new com.bjheima.newstudy.packagetest.Test01();System.out.println(tt);}
}

运行结果:
示例代码03:

package org.apache;//import语句用来完成导入其它类,同一个包下的类不需要导入,不在同一个包下需要手动导入。import com.bjheima.newstudy.packagetest.Test01;
public class Test04{public static void main(String[] args){com.bjheima.newstudy.packagetest.Test01 tt = new com.bjheima.newstudy.packagetest.Test01();System.out.println(tt);Test01 x = new Test01();System.out.println(x);Test01 y = new Test01();System.out.println(y);//java.lang.*;不需要手动导入,系统自动导入//lang:language语言包,是java语言的核心类,不需要手动导入String s = "abc";System.out.println(s);//直接编写以下代码编译错误,因为Date类没有找到Date d = new Date();java.util.Date d = new java.util.Date();//使用import语句之后:import java.util.Date;//Date d = new Date();}
}

运行结果:

Java基础-package包机制相关推荐

  1. 从0开始的Java基础,包你学会。

    Java 第一个Java程序 程序的操作流程 1.先写出可执行的代码 2.在命令框之中使用javac "文件地址"运行后,生成一个class字节码文件 再在命令框中使用java & ...

  2. Java基础07 包

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们已经写了一些Java程序.之前的每个Java程序都被保存为一个文件,比如Tes ...

  3. Package包机制

    一.Java包的概念和作用 "包"是是由一组类和接口所组成的具有一定功能的集合. 简单地说,将一组功能相关的类和接口打包起来形成的整体,就是包. 在java中每定义好一个类,通过j ...

  4. java基础之包_繁星漫天_新浪博客

    java中的包是专门用来存放类的,通常功能相同的类存放在相同的包中.在声明时.使用package语句 包的声明只能位于源文件的第一行 例子: 1.编写HelloWorld类,在类名之前声明当前类所在的 ...

  5. 搞定Java基础:反射机制

    反射机制是Java语言多态的体现,估计大家接触最早的代码可能是jdbc的一行代码吧. Class.forName("com.mysql.jdbc.Driver.class").ne ...

  6. Java基础:异常机制

    最近开始了找工作的面试,在面试过程中,面试官问了关于Java当中的异常处理机制,一直以来,无论写代码还是看书,自己对异常处理这一块就没有很好的重视过,对它的认知也仅仅停留在通过Try-catch去进行 ...

  7. [Java基础] 垃圾回收机制

    ​写在前面 本文简单介绍一下Java的垃圾回收机制相关概念. ​ 活动地址:CSDN21天学习挑战赛 学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩:迟一天就多一天平庸的困扰.各位小伙伴,如果您 ...

  8. java基础---动态代理机制

    动态代理的意思是,有一个委托类有一个代理类,让代理类去实现委托类的方法,这样既可以对委托类的代码实现进行封装和隐藏,还能够在委托类的基础上添加额外的一些自定义处理. 两种代理方式 1.jdk原生的代理 ...

  9. java基础篇——包

    包 一  引言 包是什么? 1.包是对类文件进行分类管理的文件夹: 2.包给类提供了多层命名空间: 二 使用javac建立相应的包 1.如果是在当前目录下创建 编译dos命令   javac  -d ...

最新文章

  1. levelDB数据库使用及实例 - 高性能nosql存储数据库
  2. MySQL中的外键约束
  3. (转)TinyXML Tutorial 中文指南
  4. 小程序购物车抛物线(贝塞尔曲线实现)
  5. sap crm button_正值SAP中国成立25周年之际,江苏金来奇智能科技SAPB1项目正式启动...
  6. Angularjs+Nodejs图片上传
  7. 用 js判断 一个数是否是素数(质数)_小学五年级下册数学公式打印版,孩子寒假预习用的上!...
  8. c svchost 服务 dll_小机巧丨如何解决svchost一直占用网速和内存?
  9. 【Vue2.0】— 全局事件总线GlobalEventBus(十九)
  10. 脚本学习python和linux-shell和jQuery(javascript)
  11. linux与unix的区别_Linux与Unix
  12. larveral 直接拷贝安装_重新安装网卡驱动的电脑操作
  13. mysql本地连接1045_MySQL密码正确却无法本地登录-1045
  14. 如何构建一个可用的企业级API网关?
  15. 又一隧道地标,三思点亮万里黄河第一隧
  16. 关于origin2019的安装教程
  17. python实现文本编辑器_Python实现的文本编辑器功能示例
  18. character not supported here
  19. vue 路由跳转打开新窗口(被浏览器拦截)
  20. 黑苹果macOS机型对照表

热门文章

  1. 新感悟:第一次用满满的套路来写述职报告-认真地
  2. 锂电池的正确充电方法
  3. 人生--寻找当下活着的意义
  4. html5 励志名言,励志名言
  5. android拍照软件推荐,估计你都没用过!安卓及iOS平台7款最佳拍照APP
  6. while循环语句表白
  7. UCOSII 信号量和互斥信号量(保姆级别讲解)----看完不后悔系列!!!
  8. matlab基带信号速率,深度剖析MATLAB信号处理仿真-基带脉冲成形
  9. 入手评测 i58300h和i510210u哪个好
  10. pve远程连接 spcie_用Proxmox搞定gpu穿透