首页编程java编程java中默认包是什么格式,jar是什么意思,jar文件怎么打开

java中默认包是什么格式,jar是什么意思,jar文件怎么打开

编程之家2023-10-11103次浏览

其实java中默认包是什么格式的问题并不复杂,但是又很多的朋友都不太了解jar是什么意思,jar文件怎么打开,因此呢,今天小编就来为大家分享java中默认包是什么格式的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

java中默认包是什么格式,jar是什么意思,jar文件怎么打开

Java引入上级目录中的包

1.那么包名和实际物理路径有什么关系?

答:包名必须出现在实际路径中的一部分,只是一段,不可能是绝对路径.而这个段的起点,就是包含了classpath目录的一个.

可以看到如下代码,是eclipse自动生成的.classpath文件,其中classpath就包含了testsrc, src,而这两个目录下都有个子目录 coolUnit,这个就是包名的开始.

java中默认包是什么格式,jar是什么意思,jar文件怎么打开

<?xml version="1.0" encoding="UTF-8"?>

<classpath>

<classpathentry kind="src" path="src"/>

java中默认包是什么格式,jar是什么意思,jar文件怎么打开

<classpathentry kind="src" path="testsrc"/>

<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>

<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>

<classpathentry kind="output" path="bin"/>

</classpath>

2.相同包名如果可以存储在不同物理路径下, java编译器如何找到对应的类?

答:当然可以存储在不同的物理路径下,只不过这两个路径中,有一部分必须相同,即包名包括的部分.置于java编译器如何找到,简单,就是把从包名的起点的上层目录添加到classpath中了,这样就可以找到对应了类了.类似上边的testsrc, src,这两个目录都被添加进了classpath(当然这个工作是eclipse替我们完成的,如果是我们自己编译,不借助eclipse,就需要指定 javac–classpath把这两个目录加进去)

3.这里肯定跟classpath有关,不可能你随便写个java类, java编译器都能找到,那么如何引入自己写的类呢?

如何引用自己的类的,就是将自己的类的包名的起点的上层目录作为 javac–classpath参数传入,这样的目的是让java编译器找到你的类所在的位置.

综上:包名是抽象出来的类的空间,虽然在物理上存储需要文件夹配合层次,但是关键,这个层次不是绝对路径,只是路径中的一部分,所以,我们完全可以将代码放在不同路径下,只要路径中对应包名的部分相同就可以了.

为了更好地组织类,Java提供了包机制。包是类的容器,用于分隔类名空间。如果没有指定包名,所有的示例都属于一个默认的无名包.

Java中的包一般均包含相关的类,例如,所有关于交通工具的类都可以放到名为Transportation的包中.

包语句格式:

package pkg1[.pkg2[.pkg3…]];

程序中如果有package语句,该语句一定是源文件中的第一条可执行语句,它的前面只能有注释或空行。另外,一个文件中最多只能有一条package语句.

包的名字有层次关系,各层之间以点分隔。包层次必须与Java开发系统的文件系统结构相同(并非绝对路径)。通常包名中全部用小写字母,这与类名以大写字母开头,且各字的首字母亦大写的命名约定有所不同。

当使用包说明时,程序中无需再引用(import)同一个包或该包的任何元素。import语句只用来将其他包中的类引入当前名字空间中。而当前包总是处于当前名字空间中.

如果文件声明如下:

package java.awt.image

则此文件必须存放在Windows的java\awt\image目录下或unix的java/awt/image目录下。

问题出现了:因为路径不可能是绝对的,即从根目录开始一直向下,所以目录的开始位置,只需要是classpath包含的位置就可以了.

这才是问题解决的关键.从这点说,包名是抽象的.

jar是什么意思,jar文件怎么打开

JAR文件是一种归档文件,以ZIP格式构建,以.jar为文件扩展名。打开方式如下:

1、桌面有一个jar的文件。

2、点击这个文件选择打开方式。

3、选择一个解压文件的软件,如360压缩。

4、确定之后即可,打开。

JAR文件格式以 ZIP文件格式为基础。与 ZIP文件不同的是,JAR文件不仅用于压缩和发布,而且还用于部署和封装库、组件和插件程序,并可被像编译器和 JVM这样的工具直接使用。在 JAR中包含特殊的文件,如 manifests和部署描述符,用来指示工具如何处理特定的 JAR。

扩展资料

JAR文件的特点

1、安全性

可以对 JAR文件内容加上数字化签名。这样,能够识别签名的工具就可以有选择地为您授予软件安全特权,这是其他文件做不到的,它还可以检测代码是否被篡改过。

2、减少下载时间

如果一个 applet捆绑到一个 JAR文件中,那么浏览器就可以在一个 HTTP事务中下载这个 applet的类文件和相关的资源,而不是对每一个文件打开一个新连接。

3、压缩

JAR格式允许您压缩文件以提高存储效率。

4、传输平台扩展

Java扩展框架(Java Extensions Framework)提供了向 Java核心平台添加功能的方法,这些扩展是用 JAR文件打包的(Java 3D和 JavaMail就是由 Sun开发的扩展例子)。

参考资料来源:百度百科—JAR

java中类修饰符有哪些

java的修饰符有:权限修饰符:public、protected、default、private

修饰符:abstract、static、final

public使用对象:最广,类、接口、变量、方法

protected使用对象:变量、方法注意:不能修饰类(外部类)

default使用对象:类、接口、变量、方法。(即缺省,什么也不写)

private使用对象:变量、方法注意:不能修饰类(外部类)

abstract使用对象:类、接口、方法

static使用对象:类、变量、方法、初始化函数(注意:修饰类时只能修饰内部类)

final使用对象:类、变量、方法

transient:告诉编译器,在类对象序列化的时候,此变量不需要持久保存

volatile:指出可能有多个线程修改此变量,要求编译器优化以保证对此变量的修改能够被正确的处理

native:用该修饰符定义的方法在类中没有实现,而大多数情况下该方法的实现是用C、C++编写的。

synchronized:修饰方法,多线程的支持

类分外部类和内部类,他们的访问控制是相同的吗

外部类是相对于内部类而言的,内部类是定义在类里面的类。

外部类的修饰符有:

default(缺省,不写):类定义时前面未加任何修饰符,表示同一个包中可见。

public:修饰类时表示该类能被项目中所有类可见

abstract:表示是抽象类

final:表示类不可以被继承

scrictpf:(java关键字)当对一个类或接口使用 strictfp关键字时,该类中的所有代码,包括嵌套类型中的初始设定值和代码,都将严格地进行计算。严格约束意味着所有表达式的结果都必须是 IEEE 754算法对操作数预期的结果,以单精度和双精度格式表示

内部类又分:成员内部类、局部内部类、静态内部类、匿名内部类

成员内部类:作为外部类的一个成员存在,与外部类的属性、方法并列

局部内部类:定义在外部类的方法体里面的类

静态内部类:使用static修饰的内部类

匿名内部类:就是没有名字的内部类

成员内部类修饰符有:

public:

protected:

private:private不能修饰外部类,

abstract:

final:

static:可以当做普通类使用,而不用先实例化一个外部类。(用他修饰后,就成了静态内部类了)

strictfp:(java关键字)即 strict float point(精确浮点)。(可修饰类、接口、方法)

扩展资料:

java中的类修饰符、成员变量修饰符、方法修饰符。

类修饰符:

public(访问控制符),将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类。

abstract,将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现。

final,将一个类生命为最终(即非继承类),表示他不能被其他类继承。

friendly,默认的修饰符,只有在相同包中的对象才能使用这样的类。

成员变量修饰符:

public(公共访问控制符),指定该变量为公共的,他可以被任何对象的方法访问。

private(私有访问控制符)指定该变量只允许自己的类的方法访问,其他任何类(包括子类)中的方法均不能访问。

protected(保护访问控制符)指定该变量可以别被自己的类和子类访问。在子类中可以覆盖此变量。

friendly,在同一个包中的类可以访问,其他包中的类不能访问。

final,最终修饰符,指定此变量的值不能变。

static(静态修饰符)指定变量被所有对象共享,即所有实例都可以使用该变量。变量属于这个类。

transient(过度修饰符)指定该变量是系统保留,暂无特别作用的临时性变量。

volatile(易失修饰符)指定该变量可以同时被几个线程控制和修改。

方法修饰符:

public(公共控制符)

private(私有控制符)指定此方法只能有自己类等方法访问,其他的类不能访问(包括子类)

protected(保护访问控制符)指定该方法可以被它的类和子类进行访问。

final,指定该方法不能被重载。

static,指定不需要实例化就可以激活的一个方法。

synchronize,同步修饰符,在多个线程中,该修饰符用于在运行前,对他所属的方法加锁,以防止其他线程的访问,运行结束后解锁。

native,本地修饰符。指定此方法的方法体是用其他语言在程序外部编写的。

参考资料:百度百科-修饰符

java工作原理

Java工作原理

由四方面组成:

(1)Java编程语言

(2)Java类文件格式

(3)Java虚拟机

(4)Java应用程序接口

当编辑并运行一个Java程序时,需要同时涉及到这四种方面。使用文字编辑软件(例如记事本、写字板、UltraEdit等)或集成开发环境(Eclipse、MyEclipse等)在Java源文件中定义不同的类,通过调用类(这些类实现了Java API)中的方法来访问资源系统,把源文件编译生成一种二进制中间码,存储在class文件中,然后再通过运行与操作系统平台环境相对应的Java虚拟机来运行class文件,执行编译产生的字节码,调用class文件中实现的方法来满足程序的Java API调用。

文章分享结束,java中默认包是什么格式和jar是什么意思,jar文件怎么打开的答案你都知道了吗?欢迎再次光临本站哦!

java中invoke什么意思?java 中 invoke()的作用是什么java2年经验会什么(java工作两年了,应该达到什么样的水平)