1.包

package  pack;                             /*定义包,放在程序的第一行,包名所以字母小写*/

class PackageDemo
{
    public static void main(String[] args)
    {
        packa.DemoA a=new packa.DemoA();              /*编译时将会出现两个错误,
                                           1.类名错误(需要在类名前写指定包下的名字)   
                                           2.package包不在(包定义在别的目录下,需要设置变量(set=包所在的位置))
                                           3.权限不够,要足够大,设置成public,访问的成员也要public
                                           4.编译顺序,先编译要用的类
                                          */
        a.show();
    }
}
/*-d的使用*/
/*每一次添加一次文件,那不是很烦,所以,有一个参数给我们添加
  加-d .       两个空格隔开,就相当于添加了当前目录的包了
  以前没有包,是把当前目录当成默认包存在
  -d  还可以指定去其他目录  这样做能够将当前文件与运行程序相分离,这样做,我们只需要将程序给别人就可以
  (在其它盘的运行程序想要运行,必须设定类的位置,否则没有结果,就是设置环境环境变量,设置到副目录即可)
*/

/*不同包中的类该如何进行访问呢?在程序上面写了4个注意事项*/

/*包的特点*/
/*包可以写很多类,一个公有,其它私有,所以也具有封装性*/

/*包的总结
   包与包之间进行访问,被访问包中的类以及类中的成员,需要public访问
   不同包中的子类还可以直接访问父类中被protected访问的成员

包与包之间可以使用的权限只有两种  public 和 protected
   复习:权限大于等于父类函数的权限才能覆盖
   一个包内不能出现两个公有类或者两个公有接口,必须新建一个包,不能集成
   多重包,也是用点
*/

/*为了简化类名的书写(创建类的对象在类名前要写很多包名,这很麻烦)
1.使用关键字  import(导入的意思)(格式:包名.类名)
2.导入了之后,直接创建对象即可
3.导入的是包中的类
4.加*  代表导入所有类(最后加*是导入子包中所有的类)
5.建议不要用通配符,因为这比较占用内存空间,用那个就加载那个,以后基本不用自己加
6.不同包有同一类名,那么要避免二义性,要在类名前加具体的包名
7.建立包名不要重复,可以使用url来完成定义,url是唯一的
8.包名怎么定义?   域名+包名(具体功能的缩写)
*/

package packa;

public class DemoA extends packb.DemoB   /*继承另一包里的类*/
{
    public static void main(String args[])
    {
        void show()
        {
            System.out.println("demoa show run");
            method();
        }
    }
}

package packb;

public class DemoB
{
    public static void main(String args[])
    {
        public void method()
        {
            System.out.println("demob method run");
        }
    }
}

2.jar包

/*Java的压缩包(什么是Jar包:用到jdk的工具 jar.exe)
1.方便项目的携带
2.方便于使用,只要在classPath设置jar路径即可
3.数据库驱动,SSH框架等都是以jar包实现的
*/

/*复习
1.编译,- d 对包的编译
2.运行  包名+类名
*/

/*怎么创建,与java等的工具使用类似
1.先了解
 -c  创建新的归档文件
 -t  列出归档目录
 -x  从档案中提取指定的 (或所有) 文件
 -u  更新现有的归档文件
 -v  在标准输出中生成详细输出
 -f  指定归档文件名
 -m  包含指定清单文件中的清单信息
 -e  为捆绑到可执行 jar 文件的独立应用程序
     指定应用程序入口点
 -0  仅存储; 不使用情况任何 ZIP 压缩
 -M  不创建条目的清单文件
 -i  为指定的 jar 文件生成索引信息
 -C  更改为指定的目录并包含其中的文件
 2.创建
 (要压缩包所在的目录)jar -cf  (压缩包名字 ***。jar)  (放进去的包名)
 3.查看
 jar -tf  (压缩包名字 ***。jar)
 4.使用jar包(平时都是从网上下载)
 1.下载来的jar包  看index文件(在doc里面)
 2.- cfv  -tvf   >路径.txt(可以显示的方式都用这个放在文挡下查看)
 
*/

java包和jar包的更多相关文章

  1. 【Java基础】Jar包结构结构分析和操作具体解释

    作者:郭嘉 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell 一 ...

  2. java项目打jar包的两种情况

    链接地址:http://jingyan.baidu.com/article/6b97984d8a6ddc1ca2b0bfa0.html 本文介绍一下java项目打jar包时的两种情况各怎么操作   方 ...

  3. IntelliJ IDEA导出Java 可执行Jar包

    原文:IntelliJ IDEA导出Java 可执行Jar包 保证自己的Java代码是没有问题的,在IDEA里面是可以正常运行的,然后,按下面步骤: 打开File -> Project Stru ...

  4. eclipse生成【带有外部jar包】的java可执行jar包

    之前有写过一篇使用eclipse生成java可执行jar包,但是最近的一次使用中无论如何都不成功,当双击执行打成的jar时,弹出如下错误: could not find the main class: ...

  5. SoapUI接口测试-验签值处理-调用java的加密jar包

    转载自:https://www.jianshu.com/p/7c672426a165 一. 背景: 调用接口时有个请求参数是对请求入参按一定规则进行加密生成的验签值,每次不同参数的请求生成唯一的验签值 ...

  6. java反射查看jar包中所有的类名方法名

    不反编译,不用其他工具,用java反射查看jar包中所有的类名方法名,网上很多都报错,下面这个你试试看:话不多说直接撸代码: import java.lang.reflect.Field; impor ...

  7. Linux上java程序的jar包启动通用脚本(稳定用过)

    Linux上java程序的jar包启动通用脚本如下: #! /bin/sh export LANG="zh_CN.GBK" SERVICE_NAME=` .sh` SCRIPT_N ...

  8. java命令启动jar包

    本人对这些命令也是一知半解,记录备用. 1. 使用java命令行执行java文件 # 设置命令窗口标题 title test1 # 开启输出 @echo on # 设置环境变量JAVA_HOME se ...

  9. 高版本 eclipse 如何安装 fatjar 插件以及使用 fatjar 将 Java 程序打成 Jar 包

    高版本 eclipse 如何安装 fatjar 插件以及使用 fatjar 将 Java 程序打成 Jar 包 Eclipse Version: Neon.3 Release (4.6.3) Welc ...

  10. Jmeter用BeanShell Sampler调用java写的jar包进行MD5加密

    [前言] 在工作中,有时候我们请求的参数可能需要加密,比如登录接口中的密码做了加密操作,今天我就给大家介绍一种方法:Jmeter用BeanShell Sampler调用java写的jar包进行MD5加 ...

随机推荐

  1. wavecom短信猫常用AT命令

    wavecom短信猫常用AT命令 一.一般命令 1. AT+CGMI 给出模块厂商的标识. 2. AT+CGMM 获得模块标识.这个命令用来得到支持的频带 (GSM 900,DCS 1800 或PCS ...

  2. SQLite使用教程3 数据类型

    http://www.runoob.com/sqlite/sqlite-data-types.html SQLite 数据类型 SQLite 数据类型是一个用来指定任何对象的数据类型的属性.SQLit ...

  3. svn 如何解决冲突

    项目中,往往不止你一人开发,多人开发,难免会有代码的冲突.彼此间谁也不能保证不会修改同个文件.如果修改了同个方法的内容.这时提交到svn是会提示代码冲突的. 当然,冲突是可控的,但不能避免.每次写代码 ...

  4. Mysql字符集设置 2 图

    基本概念 • 字符(Character)是指人类语言中最小的表义符号.例如'A'.'B'等: • 给定一系列字符,对每个字符赋予一个数值,用数值来代表对应的字符,这一数值就是字符的编码(Encodin ...

  5. PERCONA-TOOLKIT 工具文档

    https://www.percona.com/doc/percona-toolkit/2.2/index.html

  6. mysql performance schema的即时诊断工具-邱伟胜

    https://github.com/noodba http://www.noodba.com

  7. 解读eXtremeComponents代码结构--转载

    原文地址:http://blog.csdn.net/lark3/article/details/1937466 大致整理了去年写的东西,罗列如下: ec是一系列提供高级显示的开源JSP定制标签,当前的 ...

  8. 结合 category 工作原理分析 OC2.0 中的 runtime

    绝大多数 iOS 开发者在学习 runtime 时都阅读过 runtime.h 文件中的这段代码: struct objc_class { Class isa  OBJC_ISA_AVAILABILI ...

  9. Mysql在windows下的免安装配置步骤和重新安装的步骤

    windows下mysql免安装配置 1. 下载mysql免安装压缩包 下载mysql-5.6.22-winx64.zip 解压到本地D:\mysql-5.6.22-winx64 2. 修改配置文件 ...

  10. Android View的绘制机制流程深入详解(四)

    本系列文章主要着重深入介绍Android View的绘制机制及流程,第四篇主要介绍Android自定义View及ViewGroup的实现方法和流程. 主要介绍了自绘控件.自定义组合控件.自定义继承控件 ...