Java包的导入

编程知识 行业动态 更新时间:2024-06-13 00:21:57

Java包的导入

​ 在编写java程序的时候,往往会把具有不同功能的方法放在不同的.java文件里再写一个入口文件来运行,这时候就需要这时候通过导包把其他.java文件导入入口文件中。下面是导包的过程:

一:java文件和包在同一目录下

  1. 首先我创建了一个Print1.java文件作为包。

    package bao;//包名就是bao
    public class Print1{
    	public static void HelloWorld(){
    		System.out.println("包中的:Hello World!");
    	}
    }
    

    然后我们通过javac -d . Print1.java来把这个java文件变成一个包(就是等于是把print1.java编译后生成的.class文件放进了一个名为bao的文件夹中)

    里面的内容是.class文件

2.在创建一个Print2.java文件作为入口文件

import bao.Print1;
public class Print2 
{
	public static void main(String[] args) 
	{
		Print1.HelloWorld();//调用bao包中的HelloWorld方法
	}
}

​ 直接用javac Print2.java进行编译java Print2运行就可以了

二、java文件和包不在同一目录下

​ 现在我的Print2.java文件放在了a文件夹下而Print1.Java以及生成的包在hh文件夹里

​ 这个时候我再对Print2.java进行编译就会报错,显示包不存在

​ 这个时候的解决办法就是改变环境变量

加上之后编译运行成功 (ps:在改变环境变量后要重新打开dos界面才行)

三、调用包中类的方法的两种情况

​ 在上面的java程序中我调用包中类的方法时是直接通过类名.方法名(参数)来实现的。同样是调用调用包中类的方法,当我们使用import java.util.Scanner时我们却是通过

Scanner in = new Scanner(System.in)再用in.nextInt()之类的来调用的。我尝试了一下用

类名.方法名(参数)来调用Scanner类,结果是报错了

我把我的代码Print1.java改成这样后再编译报的错也和上面一样

package bao;//包名就是bao
public class Print1{
	public void HelloWorld(){
		System.out.println("包中的:Hello World!");
	}
}


​ 经过网上查询我知道了写方法的是有static修饰的是静态方法;这种方法可以直接通过类名.方法名(参数)来实现。而没有static修饰的方法是非静态的,不是独立存在的,需要通过创建对象再通过对象进行调用。

更多推荐

Java包的导入

本文发布于:2023-04-01 10:08:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/8cb286a74d42d29eff364cf24ab60f2c.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:Java

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!