java导入其他包的类,java如何在其他包中使用类?

can I import,use class from other package?

In Eclipse I made 2 packages

one is main other is second

main

-main (class)

second

-second (class)

and I wanted the main function of main class to call the function x in second class.

how can I do it? I tried:

import second;

second.x(); (if both classes are in the same package then it works)

second.second.x();

but none of them worked.

I'm out of idea now.

解决方案

You have to provide the full path that you want to import.

import com.my.stuff.main.Main;

import com.my.stuff.second.*;

So, in your main class, you'd have:

package com.my.stuff.main

import com.my.stuff.second.Second; // THIS IS THE IMPORTANT LINE FOR YOUR QUESTION

class Main {

public static void main(String[] args) {

Second second = new Second();

second.x();

}

}

EDIT: adding example in response to Shawn D's comment

There is another alternative, as Shawn D points out, where you can specify the full package name of the object that you want to use. This is very useful in two locations. First, if you're using the class exactly once:

class Main {

void function() {

int x = my.package.heirarchy.Foo.aStaticMethod();

another.package.heirarchy.Baz b = new another.package.heirarchy.Bax();

}

}

Alternatively, this is useful when you want to differentiate between two classes with the same short name:

class Main {

void function() {

java.util.Date utilDate = ...;

java.sql.Date sqlDate = ...;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值