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. Android开发中常用的Eclipse快捷键

    关闭所有窗口Ctrl + Shift + W  关闭所有已打开的编辑窗口 重命名Alt + Shift + R    文件或变量重命名(先选中文件或变量再同时按下快捷键) 快速引包Ctrl + Shi ...

  2. js url传值中文乱码之解决之道

    在websphere 中使用的是url=encodeURI(encodeURI(url)); //用了2次encodeURI 测试成功,第一次转换没有尝试, 处理方法一. js 程序代码:url=en ...

  3. Aizu 2309 Sleeping Time DFS

    Sleeping Time Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hust.edu.cn/vjudge/contest/view ...

  4. WCF之初体验

    什么是WCF? WCF的全称是:Windows通信基础(WindowsCommunication Foundation).本质来讲,他是一套软件开发包. WCF和WebService的差别 Webse ...

  5. HT518V311

    HT518V311.rar

  6. [Bootstrap] 7. Working Herader

    <header class="navbar navbar-default navbar-static-top"> <div class="contain ...

  7. UpdatePanel的用法

    UpdatePanel控件也是Ajax里用得最多的控件之中的一个,UpdatePanel控件是用来局部更新网页上的内容,网页上要局部更新的内容必须放在UpdatePanel控件里,他必须和上一次说的S ...

  8. javascript 递归之阶乘

    阶乘,即5! = 5*4*3*2*1, 先看传统的做法,利用while循环实现: function factorial(num){ var result = num; if(num<0){ re ...

  9. C如何获取文件夹下所有文件

    http://baike.baidu.com/view/1186290.htm?fr=aladdin 使用io.h中的_findfirst,_findnext,_findclose,_finddata ...

  10. aggregations 详解1(概述)

    aggregation分类 aggregations —— 聚合,提供了一种基于查询条件来对数据进行分桶.计算的方法.有点类似于 SQL 中的 group by 再加一些函数方法的操作. 聚合可以嵌套 ...