gpt4 book ai didi

java - 无法使用包扩展类

转载 作者:行者123 更新时间:2023-12-01 12:59:50 27 4
gpt4 key购买 nike

我有一个名为 MyPackage1 的包,其中包含 2 个公共(public)类,一个称为 Output.java,另一个称为 Input.javaOutput.java 文件的代码如下

package MyPackage1;
public abstract class Output
{
public static void outln(String str)
{
System.out.println(str);
}
public void outlnn(String str)
{
System.out.println(str+"\n");
}
public void noutln(String str)
{
System.out.println("\n"+str);
}
public void out(String str)
{
System.out.print(str);
}
public void nout(String str)
{
System.out.print("\n"+str);
}
}

另一个名为 Input.java 的类具有下面给出的代码。

package MyPackage1;
import java.io.*;
import java.util.Scanner;


public class Input extends Output //error
{
static BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
static DataInputStream dr=new DataInputStream(System.in);
static Scanner sr=new Scanner(System.in);

public static String bcin() throws IOException
{

System.out.print("Input the Value : ");
String string111=br.readLine();
return(string111);
}
public static String dcin() throws IOException
{
System.out.print("Input the Value : ");
String string111=dr.readLine();
return(string111);
}

每当我尝试编译输入时,我都会遇到一些错误。屏幕截图的链接是 enter image description here

最佳答案

您正在尝试编译Input.java。输入扩展了输出类。并且Output.java还没有被编译,并且不在编译器的源路径中。因此,最简单的方法是同时编译这两个类。转到包含 MyPackage1 的目录,然后输入

javac MyPackage1\Input.java MyPackage1\Output.java

但有一些注意事项:

  • Java 5 已经完全过时了。我们现在使用的是 Java 8。下载并使用此版本。
  • 不要将源文件存储到 JDK 的 bin 目录中。这就是 JDK 的二进制文件所在的位置。您的源文件应该位于其他地方。
  • 使用 javac 的 -d 选项将 .class 文件存储在与源目录不同的目录中。
  • 尊重 Java 命名约定。包全部小写。
  • 我真的不明白为什么Output应该是一个抽象类,以及为什么Input应该扩展Output。输入是输出吗?如果不是,则不应扩展它。

关于java - 无法使用包扩展类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23592562/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com