精华内容
下载资源
问答
  • Java包与Import导入

    万次阅读 多人点赞 2019-04-12 12:06:35
    Java语言提供的一种区别类名字命名空间的机制,它是类的一种文件组织和管理方式、是一组功能相似或相关的类或接口的集合。Java package提供了访问权限和命名的管理机制,它是Java中很基础却又非常重要的一个概念...

    包的概念


     包是Java语言提供的一种确保类名唯一性的机制,是类的一种组织和管理方式、是一组功能相似或相关的类或接口的集合。

    1. 一个完整的类名是包名+类名,在没有import导入的情况下,使用一个类需要给出完整的类名,如java.util.Date。为了方便,Java自动导入两个包:java.lang包和默认包。
    2. 无包的类可以访问有包的类, 直接导入即可;有包的类无法访问无包的类, 直接访问是访问同一个包中的, 而有包的类与无包的类不在一个包里。由于使用不同包中的类需要导入, 而无包的类因无包名无法导入;
    3. Java的包表面上看(从路径上看)是有等级的,但实际上并没有,比如java.awt,java.awt.color是两个地位相同的包。java.awt.color并不属于java.awt。
    4. 在采用类名方式使用一个类的时候, 先在当前包中查找是否有这个类, 如果没有才去导入的包中找。

     

    包的作用


    1. 方便组织自己的代码,并将自己的代码与别人提供的代码库分开管理。
    2. 将相关联的接口和类集合到一块。比如,package graphics; 就把图形处理相关的模块放到了一起。便于使用。
    3. 如同文件夹一样,包也采用了树形目录的存储方式。同一个包中的类名字是不同的,不同包中的类的名字是可以相同的,当同时调用两个不同包中相同类名的类时,应该加上包名加以区别。因此,包可以避免名字冲突。
    4. 实现了外界对包的访问控制。 需要先进行导入。
       

    定义包


     要想将一个类放入一个包中,必须在源文件中除注释以外的第一行使用package+包名语句。同时将属于包的文件放在与完整的包名匹配的子目录中。当需要调用此包中的类时,就可以使用关键字import进行导入。如果源文件中没有使用package语句,这个源文件中的类就会被放置在一个默认包(default package)中。默认包是一个没有名字的包。

    一、在定义包的时候,应该注意几点:

    1. 为了尽量使包名保持唯一性,包名通常采用小写、按倒写因特网域名的形式进行定义。
    2. 在进行命名包时,应该避免使用与系统发生冲突的名字。
    3. 一个源文件只能有一个package语句,放在源文件第一行,import语句前。
    4. 自定义包可以以java开头。
       

    编译和运行


    一、编译带包的类:

    javac -d 目录 源文件名.java
    注:在使用命令javac –d 之前,必须先创建好包路径,因为该命令不会自动创建文件夹。
    

    二、运行带包的类:

    java 包名.类名
    

     

    使用包


     同个包的类之间访问比较简单,在代码中直接使用类名;而不同包之间的访问则必须满足一个条件:一个类如果希望被其他包中的类访问, 那么必须加上public修饰(注意:用public修饰的类必须和源文件名同名)。
    一、不同包之间的使用通常有以下3种方法:只能导入public修饰的类

    1. 使用全名访问类;
    2. import 该类;
    3. import 包含该类的整个包;
       

    常用的包


    1. Java.lang包:java的核心类库,包含了运行java程序必不可少的系统类,如基本数据类型、基本数学函数、字符串处理、线程、异常处理类等,系统缺省(默认)加载这个包。
    2. java.util包:Java的实用工具类库。在这个包中,Java提供了一些实用的方法和数据结构。例如,Java提供日期(Data)类、日历(Calendar)类来产生和获取日期及时间,提供随机数(Random)类产生各种类型的随机数,还提供了堆栈(Stack)、向量(Vector) 、位集合(Bitset)以及哈希表(Hashtable)等类来表示相应的数据结构。
    3. java.io包:java语言的标准输入/输出类库,如基本输入/输出流、文件输入/输出、过滤输入/输出流等。
    4. java.util.zip包:实现文件压缩功能。
    5. java.lang.reflect包:提供用于反射对象的工具。
    6. java.mah:如提供用于执行任意精度整数算法 (BigInteger) 和任意精度小数算法 (BigDecimal) 的类。
    7. java.net包:用来实现网络功能的类库。如Socket类、ServerSocket类。
    8. java.awt包:构建图形用户界面(GUI)的类库。提供的类如:低级绘图操作Graphics类,图形界面组件和布局管理如 Checkbox类、Container类、LayoutManager接口等,以及用户界面交互控制和事件响应,如Event类。
    9. java.awt.event包:GUI事件处理包。
    10. java.awt.image包:处理和操纵来自于网上的图片的java工具类库。
    11. java.sql包:实现JDBC的类库。
    12. java.applet包:编写java applet程序用的。
       

    import


    一、当导入的两个包中有相同的类名时,如果继续采用缩写,就会出现“The type xxx is ambiguous”问题。这时,你就要使用这个类的全名。比如,java.util、java.sql包中都有Date类,程序又同时导入了这两个包中的Date类。解决办法如下:

    import java.sql.*;
    import java.util.*;
    import java.util.Date;  //明确导入一下
    

    二、静态导入,导入静态域和静态方法。

    导入特定的静态域或静态方法
    import static java.lang.Math.PI;
    import static java.lang.Math.cos;
    public class Test {
    	public static void main(String[] args) {
    	        //以下几种调用方式都可以
    		    double r = Math.cos(Math.PI * 2);//1.0
    			double r1 = Math.cos(PI * 2);//1.0
    			double r2 = cos(PI * 2);//1.0
    	}
    }
    
    导入全部的静态域和静态方法:
    import static java.lang.Math.*;
    

    过度使用静态导入会导致代码难以阅读和维护,因为阅读者不知道某个特定的静态对象是属于哪个类的。 但恰当地使用静态导入,代码可以因为不用繁琐地写全名而更具可读性。

    展开全文
  • java 的定义与使用

    千次阅读 多人点赞 2019-01-19 15:34:30
    在开发过程中,会定义很多类,为了避免相同类名称出现而发生覆盖的情况,把所有java程序保存在各自的目录里面,而该目录就是的本质实际上就是一个文件夹。 一、的定义 java程序是由一个public类和众多非...

    包的定义与使用

    在开发过程中,会定义很多类,为了避免相同类名称出现而发生覆盖的情况,把所有java程序保存在各自的目录里面,而该目录就是包的本质实际上就是一个文件夹

    一、包的定义

    • java程序是由一个public类和众多非public的类组成,在java程序的第一行加入“package 包名称;”,就可以把*.class文件保存在相应的包内;当需要调用此包中的类时,用“包名称.类名称”的格式调用,这样可以避免相同类名的冲突。
      注:在命名包名称时,尽量避开与系统冲突的名字,例如java.lang等;同时包名一般都采用小写形式。
    • 一旦程序类中出现了包名称之后,在执行程序使用类名称时,应尽量带上包名称,而不是进入包内执行。
      注:在以后进行项目开发中,所有.java文件一定要使用package定义包。

    二、包的导入

    • 因为包之间会存在相互调用的情况,一个包不但会调用本包中类,还会调用其他包中的类,所以需要用关键词“import”进行导入包中的类,格式:import 包名称.类名称;
    • 当需要导入其他包中的若干类,如果一个一个的写比较麻烦,可以用格式:import 包名称.*;来完成导入。
      注:使用通配符 “ * ” 并不意味着将包内的类全部导入,而是按照需求导入,需要什么类就导入什么类。
    • 如果在不同的包中包含有相同名称的类名,可以采用“包名称.类名称”加以区分。
      例如:
    cn.aaa.www.Demo  demo=new  cn.bbb.www.Demo();
    

    注:该句代码表示产生cn.bbb.www包内中Demo类的一个实例化对象,赋给cn.aaa.www包中的Demo类,对象引用为demo。

    代码示例:

    package cn.aaa.www;
    public class Hello{
    	public void print() {
    		System.out.println("cn.aaa.www包内的Hello类!");
    	}
    }
    
    package cn.bbb;
    import cn.aaa.www.Hello;//导入程序类
    public class World{
    	public static void main(String[] args) {
    		Hello hello=new Hello();
    		hello.print();
    	}
    }
    

    运行结果

    cn.aaa.www包内的Hello类!
    

    三、系统常用包

    • java.lang :系统的常用基础类,例如String,Object类等。
    • java.lang.reflect
    • java.math
    • java.util
    • java.io :io编程的开发包。
    • java.applet
    • java.awt.javax.swing等等,可以查看文档。

    注意:

    包也限定了访问权限,只有具有访问权限的类才能访问某个包中的类。

    No范围privatedefaultprotectedpublic
    1同一个包中的同一个类
    2同一包中的不同类-
    3在不同包中的子类--
    4在不同包中的非子类---

    <基于访问权限问题,在开发过程中,一般属性都用private封装,方法的权限用public>

    四、jar命令(开发中会大量使用)

    jar相当于一种压缩文件,里面保存的是“*.class”文件。即生成了一个用package关键字打包的内容的压缩文件。

    下图是jar命令中的参数及其含义:
    在这里插入图片描述
    使用jar命令的作用

    • 在一个java程序中会存在很多“*.class”文件,将其压缩可以节省空间;
    • 压缩生成jar文件之后,在调用jar文件中文件夹中的类时,不能像标题“二、包的导入”那样直接导入了,需要配置CLASSPATH,设置jar的加载路径;
    • 在实际的开发中,因为会用到第三方程序包,所以会用到jar文件,所以开发包必须在CLASSPATH中配置后才能使用。

    <具体的配置与java开发环境配置CLASSPATH方法相同,不在这赘述。>

    展开全文
  • Java包名如何命名

    千次阅读 2019-07-01 15:09:51
    java包起名原则 indi : 个体项目,指个人发起,但非自己独自完成的项目,可公开或私有项目,copyright主要属于发起者。 包名为“indi.发起者名.项目名.模块名.……”。 pers : 个人项目,指个人发起,独自完成,...

    java包起名原则

    indi : 
    个体项目,指个人发起,但非自己独自完成的项目,可公开或私有项目,copyright主要属于发起者。 
    包名为“indi.发起者名.项目名.模块名.……”。

    pers : 
    个人项目,指个人发起,独自完成,可分享的项目,copyright主要属于个人。 
    包名为“pers.个人名.项目名.模块名.……”。

    priv : 
    私有项目,指个人发起,独自完成,非公开的私人使用的项目,copyright属于个人。 
    包名为“priv.个人名.项目名.模块名.……”。

    onem : 
    与“indi”相同,推荐使用“indi”。 
    另外,我为了区分团队项目和前面所说项目的区分,还有了一下扩展:

    team : 
    团队项目,指由团队发起,并由该团队开发的项目,copyright属于该团队所有。 
    包名为“team.团队名.项目名.模块名.……”。

    com : 
    公司项目,copyright由项目发起的公司所有。 
    包名为“com.公司名.项目名.模块名.……”。

    java包各模块命名规则

    action为控制层:有时也会命名为“controller”即MVC中充当C角色,用来分配哪个业务来处理用户请求。

    biz业务层:存放好多处理业务的代码,现实中面向接口编程,一般这里定义都是业务接口,通常会有一个biz.impl这个包用来写实现类. 当然针对架构意义实现类不用说。

    dao持久层:数据库操作都写在这里。

    ui 用户交互层:通常为页面,例如.jsp,aspx等页面。

    util功能包:针对本项目工具类。

    common通用工具包:一般一个公司会有固定的jar,好几个项目通用的,例如远程调用等。

    domian存放实体:通常一些对应数据表的实体类放在此,如果用Mybatis框架,一般mapping创建在它下面,当然只针对架构mapping也是无意义。

    良好的命名规则能够让他人更容易熟悉项目。可以帮助自己快速回顾代码。好处多多。

    展开全文
  • Java包名的命名规则

    万次阅读 多人点赞 2019-04-21 22:54:12
    名为indi.发起者名.项目名.模块名*.*.\* pers :独自完成,公开,版权主要属于个人。 名为pers.个人名.项目名.模块名*.*.* priv : 独自完成,非公开,版权属于个人。 名为priv.个人名.项目名.模...

    个人:

    indi:多人完成,版权属于发起者

        包名为indi.发起者名.项目名.模块名
    

    pers :独自完成,公开,版权主要属于个人。

        包名为pers.个人名.项目名.模块名
    

    priv : 独自完成,非公开,版权属于个人。

        包名为priv.个人名.项目名.模块名
    

    团队:

    team:团队项目指由团队发起,并由该团队开发的项目,版权属于该团队所有。

        包名为team.团队名.项目名.模块名
    

    公司:

    com:由公司发起,版权由项目发起的公司所有。

        包名为com.公司名.项目名.模块名
    
    展开全文
  • java包名中是否可以包含下划线?

    万次阅读 2019-05-13 16:17:12
    提问:在开发的过程中经常遇这样一种情况,一个名是由多个单词组成的,这是时候该不该用下划线分割呢? 例如,my package,com.example.mypackage or com.example.my_package ? 来看一下官方文档怎么说的: ...
  • java打包可执行jar

    千次阅读 2018-07-31 17:19:46
    java打包可执行jar
  • JAVA包命名规范

    千次阅读 2018-04-04 09:16:11
    学习Java的童鞋们都知道,Java、类、接口、方法、变量、常量;JavaEE的三层模型等都有一套约定俗成的命名规则。  我学习每种语言都会关注相应的命名规则,一则体现自己比较专业;二来方便后检查,看到名称就...
  • 优先参考 :https://blog.csdn.net/weixin_40652498/article/details/103224385 main就是CCamera 父工程下的子工程 我用的是多module 按照网上的方法都不成功,所以仅供参考 java -jar CCamera.jar
  • java包(package)的声明与访问

    千次阅读 2018-05-28 14:16:53
    的概念java,其实就是我们电脑系统中的文件夹,里存放的是类文件。当类文件很多的时候,通常我们会采用多个进行存放管理他们,这种方式称为分包管理。在项目中,我们将相同功能的类放到一个包中,方便管理...
  • java包名命名规范

    万次阅读 多人点赞 2018-08-23 23:13:31
    2、 名全部小写 3、 类名首字母大写,一般都是使用驼峰式命名。 如:public class MyFirstClass{} 4、同上: 变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写。 如:int ...
  • Java 和访问权限

    千次阅读 2018-05-16 20:06:06
    1、的命名规则 命名规则: - 名全部由小写字母... - 自定义不能java开头; 2、的作用 有利于类的查找与管理。一个软件由很多类构成,这些类按其功能可分为vo类、dao类、工具类、servi...
  • java包名(package)命名规则

    千次阅读 2018-08-05 21:56:39
    Java名都有小写单词组成,类名首字母大写;的路径符合所开发的 系统模块的 定义,比如生产对生产,物资对物资,基础类对基础类。以便看了名就明白是哪个模块,从而直接到对应里找相应的实现。    由于...
  • Java包名报错

    千次阅读 2017-01-20 21:11:09
    myeclipse报错:The type java.io.ObjectInputStream cannot be resolved. It is indirectly referenced from required .class files 如下图,在继承httpservlet时候没有任何问题 如下图,在重写了doPost方法后...
  • Java包(package)的命名规范&规则

    万次阅读 多人点赞 2019-06-18 16:20:19
    java中的打包机制是为了防止程序多个地方出现相同的名字而将局部程序限定在一块的机制 如不同地区存在 同名同姓的人,为解决这个问题,我们不同地方的所有人(程序)分别打包。调用A的时候分别带上a.A或者是b.A。...
  • java包的导入方法

    万次阅读 2017-12-26 10:26:22
    1,下载  net.jar 2,在eclipse中的导入  (1) 新建一个java project,名称随意  > wjava.java  > src  >JRE System Library  (2) 在工程目录下新建一个Folder,名字Lib (可随意)  
  • eclipse java包下建立子包

    万次阅读 2018-04-07 22:23:16
    用eclipse工具,web项目中介绍如何在下建立子。 1.在src文件夹右击--new---package:(见下图)2.创建一个“com.llz”的 此时可以去到工作空间看到如图的路径: 3. 在“com.llz”的上面新建一个“model”...
  • 各种java包找不到的原因

    千次阅读 2019-07-01 18:34:40
    javax.servlet.http: 在tomcat的lib目录下servlet-api.jar org.springframework.web.servlet: 在spring-framework-3.2.18.RELEASE-dist ...
  • Java 的作用和定义

    万次阅读 2018-06-01 22:11:07
    Java语言提供的一种区别类名字命名空间的机制,它是类的一种文件组织和管理方式、是一组功能相似或相关的类或接口的集合。Java package提供了访问权限和命名的管理机制,它是Java中很基础却又非常重要的一个概念...
  • Java包(package)的命名规范

    万次阅读 多人点赞 2018-03-07 11:08:03
    原文地址:http://blog.csdn.net/kongjiea/article/details/45365753Java名都有小写单词组成,类名首字母大写;的路径符合所开发的 系统模块的 定义,比如生产对生产,物资对物资,基础类对基础类。以便看了...
  • java包名如何命名

    千次阅读 2017-07-27 20:51:41
    java包起名原则 indi : 个体项目,指个人发起,但非自己独自完成的项目,可公开或私有项目,copyright主要属于发起者。 包名为“indi.发起者名.项目名.模块名.……”。 pers : 个人项目,指个人发起,独自...
  • java打包文件生成zip压缩包

    万次阅读 2017-09-23 09:54:50
    /** ... * 打包成zip */ public static void generateZip(OutputStream os, List<File> files) throws Exception { ZipOutputStream out = null; try { byte[] buffer = new byt
  • 在使用idea创建maven父子项目时,父项目中src下的main中java和resources都有对应的权限, 如下图: ![图片说明](https://img-ask.csdn.net/upload/201810/21/1540086308_945247.png) 但是,在创建子项目时,...
  • 1、有Eclipse中导出jar,使用Package required libraries into generated JAR,其他选项没有太多异议; 2、使用exe4j打包时,选择“JAR” in “EXE” mode, 根据运行环境选择Generate 64-bit ...
  • 关于selenium的JAVA包下载网址

    千次阅读 2018-07-29 13:51:09
    关于selenium的下载网址
  • java jar 全集

    千次下载 热门讨论 2012-04-18 13:11:43
    ant-1.6.5.jar aopalliance-1.0.jar commons-beanutils.jar commons-collections-3.2.jar commons-digester.jar commons- io-1.4.jar commons-pool.jar dom4j-1.6.1.jar msbase.jar mssqlserver.jar msutil.jar ...
  • Appium java jar

    热门讨论 2015-08-06 17:36:26
    Appium java 测试框架 jar
  • 包名要用全小写,这是Java包的命名规范。
  • 关于用记事本编写和使用java包

    千次阅读 2015-11-12 11:57:56
    记事本编写和使用java包  java初学者一般都是使用记事本来编写java程序,在dos界面下运行。在我学习到包的使用的时候非常困惑,要如何编写和使用java包呢?  首先java包的编写大家都清楚,开头一句写上package ...
  • Java包(package)的命名规范,java中package命名规则

    万次阅读 多人点赞 2015-04-29 14:02:01
    Java名都有小写单词组成,类名首字母大写;的路径符合所开发的 系统模块的 定义,比如生产对生产,物资对物资,基础类对基础类。以便看了名就明白是哪个模块,从而直接到对应里找相应的实现。    ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,538,574
精华内容 1,415,429
关键字:

java包

java 订阅