java有一个控制台应用程序的概念吗?

时间:2009-12-30 20:42:22

标签: java

只是下载eclipse(最后!),并且好奇Java是否具有像c#这样的控制台应用程序的概念,所以我可以快速测试我的技能等。

13 个答案:

答案 0 :(得分:7)

任何Java应用程序都可以使用System.out写入控制台,但输出的位置取决于它的调用方式。

如果使用gui启动程序(如javaw.exe)调用应用程序,则控制台输出将丢失。如果您从终端运行它,您可以看到它。它也可以使用特定于操作系统的技术(例如shell重定向)指向其他地方,例如文件。

答案 1 :(得分:3)

是。这是关于如何创建一个的a tutorial

答案 2 :(得分:2)

不确定。只需在控制台中运行以下命令:

java -cp {classpath} {main class}

这将写入stdout/err并从stdin读取。请参阅System的文档(特别是System.outSystem.errSystem.in

答案 3 :(得分:2)

我不确定C#世界中的控制台是什么,但是使用Java,您可以使用System.out将内容输出到“标准”输出。引用它的javadoc:

  

“标准”输出流。此流已打开并准备接受输出数据。通常,该流对应于主机环境或用户指定的显示输出或另一输出目的地。

更新:搜索了一下C#console应用程序(并阅读this page),我的理解是Java没有真正的等价物,你不会有与C#相同的控制。

但是,为了快速测试,我建议检查允许执行Java表达式的Eclipse Scrapbook pages,而不必创建新的Java程序。

答案 4 :(得分:2)

这真的取决于你的“控制台应用程序”的含义。

控制台只是您的代码与之接口的另一个程序。要称为控制台,它必须为程序提供一种方法,以便向用户输出文本并从用户读取文本(System.in,.out)。但是游戏机(特别是在Unix上)可以做得更多。在典型的Linux控制台中,您可以:

  • 读入密码而不显示(回显)用户输入的内容
  • 像打字机一样移动光标
  • 清除屏幕
  • 更改文字颜色(也许是字体)
  • 将动作绑定到功能键(F1-12,CTRL + x,ALT + x)
  • 获取(有时设置)控制台的尺寸

游戏机往往是系统特定的。由于Java是独立于平台的,因此它只提供最低的功能共同点(这不是很多)。

答案 5 :(得分:2)

如果通过双击[1]

启动应用程序,则创建CMD.EXE窗口时,Java没有控制台应用程序的概念

但是,它可以在现有的CMD.EXE会话中运行,其中包含“java -jar foobar.jar”命令或类似命令,其中显示写入System.out的文本。

[1]最新的Java 6允许使用Java Web Starts的快捷方式,它可以做一些事情,但是你有所有的安全预防措施,这意味着它不仅仅是一个简单的应用程序。

答案 6 :(得分:1)

以下是打印您的第一个参数的示例。

import java.io.*;

    class ConsoleApp {
        public static void main(String args[]){
            if (args.length > 1){
               System.out.println("First Arg:"+args[0]);
            }
        }
    }

任何具有public static void main方法的类文件都可以是一个控制台应用程序,其参数从Eclipse或命令行传递。在Eclipse中右键单击该文件,选择Run As - >运行配置 - >使用Arguments选项卡将您的参数传递给类,Hit Run并享受乐趣: - )。

答案 7 :(得分:0)

当然。使用System.out和System.err分别写入stdout和stderr。

答案 8 :(得分:0)

是的,java确实有“控制台应用程序的概念”。

如果您启动任何Java书籍并编写代码,无需使用IDE即可编译和运行它,您将彻底了解它的工作原理。

PS:还在嘲笑“控制台应用程序的概念”! (差不多)所有(流行的)(编程)语言都有!

答案 9 :(得分:0)

是的,abosulutely,当您从eclipse菜单调用Run时,Eclipse将自动为您提供一个。

答案 10 :(得分:0)

只需在Eclipse中创建一个新类

public class MyTestClass{

  //hint type "main" in eclipse to get autocompletion
  public static void main(String[] args){
     System.out.println("Hello world!"); //hint: type sysout as a shortcut in Eclipse

  }

}

玩得开心

答案 11 :(得分:0)

Eclipse中没有“新的控制台项目”或类似项目,但您只需创建一个新的Java项目并读取/写入System.out / System.in / System.err,而不是使用GUI框架,例如: Swing / AWT是一个控制台应用程序。

答案 12 :(得分:0)

严格来说,并不是“只有Java”,但Groovy有一个很好的控制台,您可以轻松地尝试使用Java库。您甚至可以在网上试用here

在jvm上运行的其他动态语言可能允许你这样做。