A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 马州州 于 2012-7-23 20:01 编辑

今天刚看到包的视频,三个包,代码很简单,就是一直报错,不知道为什么,代码看了一遍又一遍就是找不到错误
第一个
package packa;
public class DemoA extends packb.DemoB  //就是这里出问题,我继承了DemoB,系统提示错误
{
  public void show()
{
  System.out.println("show run");
  method();
}
}
第二个
package packb;
public class DemoB
{
public void method()
{
  System.out.println("method run");
}
}
第三个
package pack;
class PackageDemo
{
public static void main(String[] args)
{
  packa.DemoA d = new packa.DemoA();
  d.show();
}
}
上面红色部分,DemoA继承DemoB,就这里报错,不知道为什么,大家帮我看一下吧,错误提示如下

不是啊,我完全按照毕老师的来的
path也设置好了
就是不行


7 个回复

倒序浏览
可以运行的.......
不过还是建议先导包,后使用
回复 使用道具 举报
先编译DemoB没问题
再把 packb这个文件夹拷贝到源文件所在位置,在编译DemoA就没问题了
我猜在编译DemoA时,他是在当前文件夹中寻找 packb.DemoB  吧。
回复 使用道具 举报
以后在遇到这样的情况,你可以尝试先把他们都写到一个类里面,然后相互调用,看看是否可以通过,如果可以,那就证明代码本身是没有问题的。
然后你在按照你的办法分开,如果出现问题了,第一个要注意是否导入你调用类所在的包,一般myeclipse是会有提示的。
回复 使用道具 举报
  1. package packa;

  2. public class DemoA extends DemoB //就是这里出问题,继承了DemoB,应该写DemoB
  3. {
  4. public void show()
  5. {
  6. System.out.println("show run");
  7. method();
  8. }
  9. }
复制代码
更多图片 小图 大图
组图打开中,请稍候......
回复 使用道具 举报
韩爽 发表于 2012-7-23 17:08
  1. package packa;

  2. public class DemoA extends DemoB /*这句话的意思是,创建DemoA类,继承DemoB类 你那那个正常情况下是正确的,但是前提是你要继承的类跟你所在的类不在同一个包下packb.DemoB 的意思是,***包下的***类,报错的原因是因为你本身所有的类别都是建立在同一个包下的,你看你的错误提示不是提示你没有找到包packb么.*/
  3. {
  4. public void show()
  5. {
  6. System.out.println("show run");
  7. method();
  8. }
  9. }
复制代码
回复 使用道具 举报
张頔 中级黑马 2012-7-23 17:30:12
7#
lz的程序在eclipse中运行正确,在cmd中运行不正确
之所以在eclipse中运行正确是因为eclipse的导包机制和cmd运行不一样

修改后 在cmd中运行结果就正确了
第一个包packa和packb位置放错了位置如图1,因为在cmd中他是在当前目如下即PackageDemo目如下找packb
而且PackageDemo应该这样写
class PackageDemo
{
public static void main(String[] args)
{
  packa.DemoA d = new packa.DemoA();
  d.show();
}
}


这样结果就正确了

1.jpg (14.2 KB, 下载次数: 24)

1.jpg

U25WO(D(KUBTS@%%D__1%NT.jpg (22.98 KB, 下载次数: 26)

U25WO(D(KUBTS@%%D__1%NT.jpg
回复 使用道具 举报
芦曦 中级黑马 2012-7-23 18:27:43
8#
本帖最后由 芦曦 于 2012-7-23 18:30 编辑

楼主的错误是packb包不存在。
是因为packb包不在当前目录下,,请好好检查下哦。
设置下classpath。
代码是没错的。能运行出结果。

QQ截图20120723182328.png (1.77 KB, 下载次数: 25)

QQ截图20120723182328.png

QQ截图1.png (1.08 KB, 下载次数: 25)

QQ截图1.png
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马