当前位置:首页 » 编程软件 » 用java写编译器

用java写编译器

发布时间: 2023-03-20 12:02:39

java编译器是什么怎样用java写程序没有java专用写程序的程序吗jdk又是什么

编译器是eclipse和MyEclipse之类的东东 据说有大神拿记事本也能写
写程序的话要先有个包 包里有个类 类里有个主方法
jdk包括java运行环境和基础类库

❷ 如何编写你的第一个Java程序 3种方法来编写你的第一个Java程序

目录方法1:编写你的第一个Java程序1、要开始用Java编写程序,先设置你的工作环境。2、任何一种类似记事本的程序都能够用于Java编程。3、确保安装了Java软件开发工具包方法2:Hello World 程序1、我们将首先创建一个能打印"Hello World"的程序。2、声明类和main方法。3、编写将打印出"Hello World"的代码行。4、把这些都放在一起。5、保存文件,并打开命令提示符或终端来编译程序。6、运行程序。7、恭喜,你方法3:输入和输出1、我们现在将扩展我们的Hello World程序,以接受用户的输入。2、导入Scanner(扫描仪,由于编程时使用Scanner,故下文用Scanner)类。3、在main方法中,创建Scanner对象的一个新实例(instance)。4、提示用户输入。5、要求Scanner对象接受用户键入的下一行,并将其存储在变量中。6、向用户显示问候语。7、一起保存以上代码。8、编译并运行。Java是James Gosling于1995年创建的一种面向对象的编程语言,它用“字段”(fields,描述对象的属性),和“方法”(methods,对象可以执行的操作),将概念表示为“对象”(objects)。Java是一种“编写一次,就可以在任何地方运行”的编程语言,可以在任何装有Java虚拟机(JVM)的平台上运行。由于Java是一种用上大量英文单词的编程语言,母语为英语的初学者很容易学习和理解,非英语母语者只要下一番苦功也能很快上手。本教程介绍如何用Java编写程序。
方法1:编写你的第一个Java程序
1、要开始用Java编写程序,先设置你的工作环境。许多程序员使用集成开发环境(Integrated Development Environment,IDE)进行Java编程,比如Eclipse和NetBeans。但是不必使用臃肿的IDE,也可以编写Java程序并编译它。
2、任何一种类似记事本的程序都能够用于Java编程。高级程序员有时更喜欢使用终端内的文本编辑器,如Vim和Emacs。我们推荐一个可以安装在基于Windows和linux系统(Mac、Ubuntu等)的文本编辑器:SublimeText。我们将在本教程中使用它。
3、确保安装了Java软件开发工具包。你要用它来编译程序。在基于Windows的操作系统中,如果环境变量不正确,则可能在运行javac时出错。有关JDK安装的详细信息,可以参阅如何安装Java软件开发工具包,以避免此错误。
方法2:Hello World 程序
1、我们将首先创建一个能打印"Hello World"的程序。在文本编辑器中,创建一个新文件,并将其另存为"HelloWorld.java"。HelloWorld是类名,你需要让类名与文件同名。
2、声明类和main方法。main方法 public static void main(String[] args)是程序运行时执行的方法。这个main方法在每个Java程序中都以相同方式调用。
public class HelloWorld { public static void main(String[] args) { }}
3、编写将打印出"Hello World"的代码行。
System.out.println("Hello World.");让我们看看这一行的组成成分:System 告诉系统执行某些操作。
out 告诉系统我们要输出一些内容。
println ?代表"打印行(print line)",我们用它告诉系统在输出中打印一行文字。
("Hello World.") 周围的圆括号表示方法 System.out.println()接受一个参数。在本例中,该参数是字符串"Hello World."
注意,Java中有一些我们必须遵守的规则:必须始终在每行末尾添加分号。
Java区分大小写,因此必须以正确的大小写写入方法名、变量名和类名,否则将出现错误。
某个方法或循环的特定代码块包含在花括号中。
4、把这些都放在一起。最后Hello World程序应如下所示:
public class HelloWorld { public static void main(String[] args) {System.out.println("Hello World."); }}
5、保存文件,并打开命令提示符或终端来编译程序。打开保存HelloWorld.java的文件夹,并键入javac HelloWorld.java。这告诉Java编译器你想要编译HelloWorld.java。如果有错误,编译器会告诉你做错了什么。否则,你不应该看到来自编译器的任何消息。如果现在查看helloworld.java所在的目录,应该会看到helloworld.class。这是Java用来运行程序的文件。
6、运行程序。我们终于可以运行我们的程序了! 在命令提示符或终端中,键入java HelloWorld。这是在告诉Java你想运行HelloWorld类。你应该看到控制台出现 "Hello World"。
7、恭喜,你完成了第一个Java程序!
方法3:输入和输出
1、我们现在将扩展我们的Hello World程序,以接受用户的输入。在我们的Hello World程序中,我们打印出一个字符串供用户查看,但是只有当程序能够接收用户输入信息,才能称之为程序的交互功能。我们现在将扩展程序,提示用户输入他或她的名字,然后用名字问候用户。
2、导入Scanner(扫描仪,由于编程时使用Scanner,故下文用Scanner)类。在Java中,我们有一些可以访问的内置库,但是我们必须导入它们。其中一个库是java.util,它包含我们获取用户输入所需的Scanner对象。为了导入Scanner类,我们在代码的开头添加了以下行。
import java.util.Scanner;这告诉程序我们想使用java.util包中的Scanner对象。
如果希望访问java.util包中的每个对象,只需在代码的开头编写import java.util.*; 即可。
3、在main方法中,创建Scanner对象的一个新实例(instance)。Java是一种面向对象的编程语言,因此它使用对象来表示概念。Scanner对象是含有字段和方法的对象。为了使用Scanner类,我们必须创建一个新的Scanner对象、它可以填充的字段和使用的方法。示例如下:
Scanner userInputScanner = new Scanner(System.in);userInputScanner是刚刚创建的Scanner对象实例的名称。注意名称是用骆驼体(每个单词首字母大写)写的,这是Java中变量命名的规定。
我们使用 new 运算符创建对象的新实例。因此在本例中,我们通过 new Scanner(System.in),创建了Scanner对象的新实例。
Scanner对象接受一个参数,该参数告诉对象要扫描什么。在本例中,我们输入System.in 作为参数。System.in告诉程序扫描来自系统的输入,这是用户将在程序中键入的输入。
4、提示用户输入。我们必须提示用户输入,以便用户知道何时在控制台中键入内容。这可以通过System.out.print或System.out.println实现。
System.out.print("What's your name? ");
5、要求Scanner对象接受用户键入的下一行,并将其存储在变量中。Scanner将始终接收用户键入的数据。下面的行将要求Scanner接受用户键入的姓名,并将其存储在变量中:
String userInputName = userInputScanner.nextLine();在Java中,使用对象方法的规定是objectName.methodName(parameters)。在userInputScanner.nextLine()中,我们使用刚才给出的名称调用Scanner对象,然后调用它的方法nextLine() ,该方法不接受任何参数。
注意,接下来程序将把下一行存储在一个"字符串"对象中。我们已将字符串对象命名为userInputName
6、向用户显示问候语。现在我们已经存储了用户名,我们可以打印一个问候语给用户。还记得我们在main类中编写的 System.out.println("Hello World."); 吗? 我们刚刚编写的所有代码都应该放在这一行上面。现在我们可以修改这一行,如:
System.out.println("Hello " + userInputName + "!");我们把"hello"、用户名和"!" 通过编写 "Hello " + userInputName + "!" 连起来的方式,称为字符串串联。
这里我们有三个字符串:"Hello "、userInputName和"!"。Java中的字符串是不可更改的。因此,当我们连接这三个字符串时,我们实际上创建了一个包含问候语的新字符串。
然后将这个新字符串作为参数输入System.out.println。
7、一起保存以上代码。我们的代码现在应该如下所示:
import java.util.Scanner;public class HelloWorld { public static void main(String[] args) {Scanner userInputScanner = new Scanner(System.in);System.out.print("What's your name? ");String userInputName = userInputScanner.nextLine();System.out.println("Hello " + userInputName + "!"); }}
8、编译并运行。进入命令提示符或终端,并运行与我们在第一次迭代HelloWorld.java时运行的命令。我们必须首先编译程序:javac helloworld.java。然后我们可以运行它:java HelloWorld。
小提示Java是一种面向对象的编程语言,建议你阅读更多关于面向对象编程语言的基础知识,非常有用。
面向对象编程有许多特征。其中三个主要特征是:封装:限制访问对象某些组件的能力。Java为字段和方法提供私有(private)、受保护(protected)和公共(public)三种修饰符。
多态:对象可以转换标识。在Java中,可以将一个对象转换为另一个对象,以使用另一个对象的方法。
继承:使用与当前对象位于同一层次结构中的另一个类的字段和方法的能力。

❸ 用Java可以写c语言编译器吗

用java是可以写语言编译器的,用任何语言工具写都可以。 各语言开发工具间只有开发效率的差异,没有可行不可行的区别。

编译器其实就是一个翻译工具,它可以把代码直接翻译成二进制文件交给CPU执行(二进制指令就是CPU的指令集,当然可以直接操作内存),当然,这个二进制文件需要符合操作系统的可执行文件的格式(PE格式或ELF格式)才能执行。

换个角度理解:
linux gcc实际上就是一个工具集合,包含编译器,汇编器,连接器等
编译器就是把c语言程序翻译为一种叫做目标文件的中间表示形式,然后交给汇编器,翻译为汇编程序,而汇编执行直接对应二进制机器码,链接之后就可以变成可执行文件了。

而用java实现的编译器完全可以代替gcc工具集合中的编译器,生成相同的目标文件的中间表示形式,在交给gcc汇编器,连接器等处理。

❹ 我想用JAVA做个简易编译器,说说思路,或者有没有现成的代码JAVAC的代码有吗

要写编译器?自己开发语言?很牛X,先赞一个!
自己写编译器,原理其实不难,就那么点东西。找一个编译原理看明白就OK了,词法、语法、语义、语境。
这些东西用一些自动机,图灵机,范式,正规之类的就可以搞定。分析嘛,什么逆波兰,树形,一共也没几种的。
但最难做的是优化,还有机器代码生成这二部分。
优化怎么做?你的中间代码放哪?先优化还是先生成中间代码?
机器代码怎么搞?用汇编?还是直接和机器特性相关?
反正这二点我是晕,虽然原理还是那点东西,但真搞起来,我一点思路都没有。。。
国内写编译器的有,但都不是很牛X。
想要写好,还得多看E文资料。
加油吧。

❺ 如何用java实现一个文本编译器

JDK自带一个简单的Notepad,你可以研究一下他的源代码。
在%JAVA_HOME%\demo\jfc\Notepad 目录下

JDK自带一个稍复杂的Stylepad,你可以研究一下他的源代码。
在%JAVA_HOME%\demo\jfc\Stylepad目录下

❻ java用什么软件编写代码

JAVA编程常用的软件:

1、Eclipse:

Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。

2、MyEclipse:

MyEclipse是Eclipse的升级版,也是一款功能强大的J2EE集成开发环境,由Genuitec公司发布,提供免费版和收费版。被誉为最好用的Java IDE之一。

MyEclipse 是对Eclipse IDE的扩展,利用它可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。

3、IntelliJ IDEA:

IntelliJ IDEA是一款综合的Java 编程环境,被许多开发人员和行业专家誉为市场上最好用的IDE之一,与MyEclipse齐名。

它提供了一系列最实用的的工具组合:智能编码辅助和自动控制,支持J2EE,Ant,JUnit和CVS集成,非平行的编码检查和创新的GUI设计器。

4、NetBeans:

NetBeans IDE是一个屡获殊荣的集成开发环境,可以方便的在Windows、Mac、Linux和Solaris中运行。NetBeans包括开源的开发环境和应用平台,NetBeans IDE可以使开发人员利用Java平台能够快速创建Web、企业、桌面以及移动的应用程序。

5、BlueJ:

BlueJ是一款支持Java编程语言的集成开发环境(IDE)。它原本是为了教育目的而开发的,同时也适合于那些想做小型软件开发的开发人员。它的运行需要JDK(Java开发工具包)的帮助。BlueJ主要是为面向对象的程序设计教学而开发的,因此它的设计不同于其他的开发环境。

参考资料来源:网络-BlueJ

参考资料来源:网络-IntelliJ IDEA

参考资料来源:网络-Netbeans

参考资料来源:网络-eclipse

参考资料来源:网络-MyEclipse

❼ 用java做一个java的编译器

Javac编译器读取Java源代码,并将其编译成字节代码,说的直白一点就是把java语言翻译成计算机可以识别的二进制代码。
java的编译器有很多种,有sun公司的jdk,有oracle的jdk,还有其他一些公司的,多采用sun公司的jdk。
java同时需要集成开发环境,它集成了java的编译器,让我们不必通过命令行来编译java类文件,通过它我们可以快速的开发我们需要的程序。目前用的比较多的集成开发环境有eclipse和myeclipse,eclipse有很多具有针对性的版本来应对不同的开发,而myeclipse则是相对来说功能比较全面,当然也需要购买,个人建议myeclipse。

❽ 初学java 用什么编译器

一 eclipse / myeclipse
当年学习java,最先接触到的就是 eclipse。喔了个噻,当时感觉eclipse好牛啊,有好多先进的功能:
1. 可以方便地进行包管理。可视化窗口,创建目录和文件都很方便,移动包,复制包等都可以方便的进行。
2.热键操作。复制保存啥的就不说了,代码提示这个功能还是很不错的,在写着写着,脑子突然短路的时候,可以通过快捷键把脑子快速带回来。
3.代码调试。有时候,写着写着代码,突然间就报错了,不知道哪里错了,咋整,这时候,如果使用编辑器的话,就可以使用 debug模式进行调试了,找出问题所在,解决问题。
4.一些代码管理等插件。在企业中肯定要用到代码同步工具,svn 或者 git , 在编辑器中会提供这样的插件,方便代码的管理。

二 idea
相比 eclipse 和 myeclipse ,idea 的基本功能差不多。
1. 包管理:也是有方便的包和资源管理。
2.热键:也是提供热键管理的,而且还很好用。
3.代码调试:debug模式用起来也是很舒服。
4.插件方面:也是支持一些插件的,如 热部署插件等。

三 比较
1. 操作:两个软件有不同的快捷键,虽然idea兼容部分eclipse快捷键,但是不建议这样做。
2.资源消耗:idea更能吃内存啊呦喂,电脑配置低的伤不起啊。eclipse要更柔和一点。
3.是否免费:eclipse 是免费的,myeclipse和idea 是要付费的呦。但是嘛,你懂得。
4.专业性:idea 应该是更专业的,有更高的代码更新机制和代码提示功能。但是 eclipse 涉及的范围更广,除了java 和可以编辑其他语言的项目。

四 建议
1. 如果电脑配置比较低,建议使用 eclipse ,并且使用较低版本的,这样,电脑不会太吃力。如果配置比较高,比如,16G内存,固态硬盘,那就使用idea吧。
2. 没有最好的编辑器,只有最适合自己的编辑器。任何一个编辑器用习惯了,都是很不错的。
希望对您有所帮助!~

❾ 如何使用javac命令编译java源程序

1.建文本文档,输入自己的java程序。

热点内容
终端配置账号该如何改密码 发布:2024-05-05 11:24:37 浏览:823
成都存储研发招聘 发布:2024-05-05 11:24:29 浏览:283
电脑服务器名称怎么查找 发布:2024-05-05 10:49:37 浏览:469
电脑连到代理服务器 发布:2024-05-05 10:40:02 浏览:249
华为安卓手机如何投屏到雷克萨斯 发布:2024-05-05 10:37:50 浏览:210
微博上传原图 发布:2024-05-05 10:20:05 浏览:749
服务器换电脑需要什么东西 发布:2024-05-05 09:52:28 浏览:754
老算盘算法 发布:2024-05-05 09:43:10 浏览:841
ps存储显示不含通道 发布:2024-05-05 09:32:35 浏览:103
如何用安卓做一个识物界面表 发布:2024-05-05 09:29:28 浏览:99