簡體   English   中英

無法導入Java中的類。 代碼拒絕相信它的存在

[英]Can't import a class in java. Code refuses to believe it exists

好的,所以我編寫了要查找圓形,三角形和正方形區域的代碼。 我的軟件包文件夾Mung中有兩個Java文件。 由於某種原因,我不斷收到錯誤Shapes.java:2:錯誤:包Mung不存在

這是我的代碼。

import java.io.*; import java.util.*;
import Mung.*;
public class Shapes
{
   public static void main(String args[])
   {
      System.out.println(areaSquare());
      System.out.println(areaCircle());
      System.out.println(areaTriangle());
   }
}

import java.io.*; import java.util.*;
public class ShapesAssignment
{
   public ShapesAssignment (double r,double h,double w)
  {
  double radius = r;
  double height = h;
  double width = w;
  }
   public double areaCircle()
   {
      double cArea = Math.PI * radius;
      return cArea;
   }
   public double areaTriangle()
   {
      double tArea = (height*width)/2;
      return tArea;

    }
    public double areaSquare()
   {
      double sArea = (height*width);
      return sArea;

   }
   public double radius;
   public double height;
   public double width;
}

您能否在Eclipse中拍攝項目樹的屏幕截圖? 如果Mung是一個類,從這里看起來像是一個類,那么您就不會那樣導入它。 您將導入在其中找到Mung類的包。 如果我誤會了,那是因為您對軟件包的命名不正確。 它看起來應該像這樣:

import com.company.app.<name>

什么是明包,您真的需要嗎? 讓我們嘗試一下:

import java.io.*;
import java.util.*;
public class Shapes {
  public static void main(String args[]) {
     ShapesAssignment sp = new ShapesAssignment(2, 3, 4);
     System.out.println(sp.areaSquare());
     System.out.println(sp.areaCircle());
     System.out.println(sp.areaTriangle());
  }
}

將兩個Java文件放在同一文件夾中並不意味着它們位於同一包中。

也許確實不需要導入任何內容-檢查這兩個文件( Mung源文件和您要在其中使用Mung )是否都在默認包中(這些文件都不以關鍵字package開頭... ),您只需在其他文件中使用Mung ,而無需指定任何導入)

如果這些文件中至少有一個以package關鍵字開頭,則這些文件位於其他軟件包中。 您需要確保要導入的文件以word package開頭(我想Mung不是包,而是類-包名稱以小寫字母開頭,我認為Mung就是您需要一種方法的類從中導入)。 檢查包含需要從中導入的類的文件,如果它以諸如package mypackage.xyz;類的文件開頭package mypackage.xyz;

如果它不是以word package開頭的,那么您將無法使用import關鍵字從此文件中導入任何內容,因為此文件中的所有內容均位於默認包中(Java不允許使用來導入默認包中包含的任何內容。 import關鍵字)。

如果它位於default以外的任何其他包中,請使用該包的全名和該類的名稱導入它,例如:

import mypackage.xyz.Mung.*;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM