java可以开发.exe程序吗比如 windows记事本程序

java可以开发.exe程序吗比如 windows记事本程序,第1张

Windows桌面开发方面不是Java的主攻,Java程序要运行在安装了jdk环境的机器上,要是一定要转成exe文件,也不是不可以,但有点麻烦,而且文件比较大,因为会夹带着一个虚拟机 里面,不过Java完全可以写一个像记事本那样的小程序,我现在就帮你写一个让你看看用Java写的记事本是怎样的:

/  简单记事本开发

 /

import javaawt;

import javaxannotationprocessingFiler;

import javaxswing;

import javaawtEvent;

import javaawtevent;

import javaio;

public class NotePad extends JFrame implements ActionListener {

JTextArea jta=null;

JScrollPane jsp=null;

JMenuBar jmb=null;

JMenu jm1,jm2,jm3,jm4,jm5;

JMenuItem jmi1,jmi2,jmi3;

String str="";

String path="";

public static void main(String[] args) {

NotePad np=new NotePad();

}

public NotePad(){

String str="";

jta =new JTextArea();

jtasetFont(new Font("宋体", FontBOLD,28));

jsp=new JScrollPane(jta);

jmb=new JMenuBar();

jm1=new JMenu("文件(o)");

jm2=new JMenu("编辑(E)");

jm3=new JMenu("格式(O)");

jm4=new JMenu("查看(V)");

jm5=new JMenu("帮助(H)");

jmi1=new JMenuItem("打开");

//jmi1setMnemonic('o');

//添加快捷键

jmi1setAccelerator(KeyStrokegetKeyStroke('O',javaawtEventCTRL_MASK));

jmi2=new JMenuItem("保存");

jmi3=new JMenuItem("退出");

jmi1addActionListener(this);

jmi2addActionListener(this);

jmi3addActionListener(this);

jmbadd(jm1);

jmbadd(jm2);

jmbadd(jm3);

jmbadd(jm4);

jmbadd(jm5);

jm1add(jmi1);

jm1add(jmi2);

jm1add(jmi3);

thissetJMenuBar(jmb);

thisadd(jsp);

thisgetContentPane()setVisible(true);

thissetTitle("新建文本文档");

thissetIconImage((new ImageIcon("D://photos//SNC02103JPG"))getImage());

thissetBounds(150,100,800,600);

thissetDefaultCloseOperation(JFrameEXIT_ON_CLOSE);

thissetVisible(true);

}

public void actionPerformed(ActionEvent e) {

if(egetSource()==jmi1){

JFileChooser jfc=new JFileChooser("C:\\Users\\jie\\Desktop");

jfcsetDialogTitle("请选择您要打开的文件");

jfcshowOpenDialog(null);

str=jfcgetSelectedFile()getName();

thissetTitle(str);

jfcsetVisible(true);

String filename=null;

FileReader fr=null;

BufferedReader br=null;

try {

filename=jfcgetSelectedFile()getAbsolutePath();

fr=new FileReader(filename);

br=new BufferedReader(fr);

String s="";

String all="";

while((s=brreadLine())!=null){

all+=s+"\r\n";

}

jtasetText(all);

} catch (Exception e2) {

Systemoutprintln("a");

e2printStackTrace();

}finally{

try{

frclose();

brclose();

}catch (Exception e3){

e3printStackTrace();

}

}

}

else if(egetSource()==jmi3){

Systemexit(0);

}

}

public void temp(){

JFileChooser jfc2=new JFileChooser("C:\\Users\\jie\\Desktop");

jfc2setDialogTitle("另存为");

jfc2showSaveDialog(null);

jfc2setVisible(true);

path=jfc2getSelectedFile()getAbsolutePath();

}

1内部使用 C 的 longjmp 机制让出一个协程。 因此,如果一个 C 函数 foo 调用了一个 API 函数, 而这个 API 函数让出了(直接或间接调用了让出函数)。 由于 longjmp 会移除 C 栈的栈帧, Lua 就无法返回到 foo 里了。

2为了回避这类问题, 碰到 API 调用中调用让出时,除了那些抛出错误的 API 外,还提供了三个函数: lua_yieldk, lua_callk,和 lua_pcallk 。 它们在让出发生时,可以从传入的 延续函数 (名为 k 的参数)继续运行。

3我们需要预设一些术语来解释延续点。 对于从 Lua 中调用的 C 函数,我们称之为 原函数。 从这个原函数中调用的上面所述的三个 C API 函数我们称之为 被调函数。 被调函数可以使当前线程让出。 (让出发生在被调函数是 lua_yieldk, 或传入 lua_callk 或 lua_pcallk 的函数调用了让出时。)

4假设正在运行的线程在执行被调函数时让出。 当再次延续这条线程,它希望继续被调函数的运行。 然而,被调函数不可能返回到原函数中。 这是因为之前的让出 *** 作破坏了 C 栈的栈帧。 作为替代品,Lua 调用那个作为被调函数参数给出的 延续函数 。 正如其名,延续函数将延续原函数的任务。

5注意这里那个额外的显式的对延续函数的调用:Lua 仅在需要时,这可能是由错误导致的也可能是发生了让出而需要继续运行,才会调用延续函数。 如果没有发生过任何让出,调用的函数正常返回, 那么 lua_pcallk (以及 lua_callk)也会正常返回。 (当然,这个例子中你也可以不在之后调用延续函数, 而是在原函数的调用后直接写上需要做的工作。)

6Lua 会把延续函数看作原函数。 延续函数将接收到和原函数相同的 Lua 栈,其接收到的 lua 状态也和 被调函数若返回后应该有的状态一致。 (例如, lua_callk 调用之后, 栈中之前压入的函数和调用参数都被调用产生的返回值所替代。) 这时也有相同的上值。 等到它返回的时候,Lua 会将其看待成原函数的返回去 *** 作。

7我们需要预设一些术语来解释延续点。 对于从 Lua 中调用的 C 函数,我们称之为 原函数。 从这个原函数中调用的上面所述的三个 C API 函数我们称之为 被调函数。 被调函数可以使当前线程让出。 (让出发生在被调函数是 lua_yieldk, 或传入 lua_callk 或 lua_pcallk 的函数调用了让出时。)

8假设正在运行的线程在执行被调函数时让出。 当再次延续这条线程,它希望继续被调函数的运行。 然而,被调函数不可能返回到原函数中。 这是因为之前的让出 *** 作破坏了 C 栈的栈帧。 作为替代品,Lua 调用那个作为被调函数参数给出的 延续函数 。 正如其名,延续函数将延续原函数的任务。

希望能帮到你,谢谢!

为了在您的机器上配置起一个Java开发环境——您将使用一个“开发环境”来“开发”(编写)程序——您需要完成以下这些步骤:

1下载一个包含Java开发环境(编译器和其他工具)的大文件。点击“下载J2SE SDK”链接下载SDK(软件开发工具包)软件。网页会显示一个许可协议。点击“接受”。选择您的 *** 作系统,然后将文件保存到下载目录中。这是一个巨大的文件,用电话调制解调器下载需要好几个小时。接下来的两个文件也很大。

2下载一个包含Java文档的大文件。选择 *** 作系统后点击SDK141文档的链接。

3如果您的机器上还没有安装WinZip(或可执行相同功能的程序),那么您需要下载一个包含WinZip的大文件并安装之。如果您的机器上没有安装某个的版本的WinZip或其他解压缩软件,下载WinZip的试用版。运行EXE文件安装。很快我们将使用它来安装文档。

4安装Java开发环境。运行第一步下载的j2sdk-1_4_1-exe文件。他将自动解压并安装开发工具包。

5安装文档。阅读安装说明文档。它会要求您将文档文件移至刚才开发工具包的安装目录。将文档解压缩,文件就会被安排到适当的位置。

6调整环境变量。按照此页的要求,您需要改变路径变量。最简单的办法是打开一个MS-DOS窗口键入PATH看看当前的路径变量是什么,然后用记事本打开autoexecbat按要求修改PATH环境变量。

7全面测试。现在您应该可以打开另一个MS-DOS窗口并键入javac了。

java一般用来编写如下的程序,如下:

使用java语言为基础,综合jsp、JavaScript、html、jqury等技术开发网站。

使用java为开发语言,编写手机应用程序,也就是adroid app。

使用java为底层语言,开发嵌入式程序。

1、嵌入式领域

Java在嵌入式领域也有很大的应用。你只需要130KB就能够使用Java技术(在一块小的芯片或者传感器上),这显示了这个平台是多么的可靠。Java最初是为了嵌入式设备而设计的。

事实上,这也是Java最初的一项“立即编写,随处运行”主旨的一部分。

2、大数据技术

Hadoop和其他的大数据技术也在不同程度使用着Java,例如Apache的基于Java的Hbase,Aumulo(开源),以及。但是Java并没有占领整个领域,还有其他的大数据技术例如MongoDB就是使用C编写的如果Hadoopor和逐渐发展,那么Java就能有潜力在大数据技术领域上得到更大的发展空间。

3、软件工具

很多有用的软件和开发工具都是运用Java编写和开发的,例如Ecilpse,和NetbansIDE。我认为这些都是最经常使用的用Java编写的桌面应用程序。就如上面所说,Swing曾经在图形用户界面的客户端开发非常流行,它们大多数应用在金融服务领域以及投资银行。虽然现在JavaFx正在逐渐地流行起来,但仍然无法替代Swing,而且C#已经在大部分金融领域中代替了Swing。

4、网站应用

Java同样也在电子商务和网站开发上有着广泛的运用。你可以运用很多RESTfull架构,这些架构是用SpringMVC,Struts20和类似的框架开发出来的。甚至简单的Servlet,JSP和Struts在各种政府项目也是备受欢迎,许多政府,医疗,保险,教育,国防和其他部门的网站都是建立在Java之上的。

5、在金融服务行业的服务器应用

Java在金融服务业有着很大应用。很多的全球性投资银行例如(高盛投资公司),Citigroup(花旗集团),Barclays(巴克莱银行),(英国渣打银行)和一些其他银行都用Java编写前台和后台的电子交易系统,结算、信息确认系统,数据处理项目和以及其他的项目。

Java被运用于编写服务端应用,但大多数没有前端,都是从一个服务端(上一级)接受数据,处理数据后发向其他的处理系统(下一级)。JavaSwing由于能开发出图形用户界面的客户端供交易者使用而备受欢迎,但是现在C#正在快速地取代Swing的市场,这让Swing倍有压力。

6、交易系统

第三方交易系统,金融服务行业的一大部分,同样也是使用Java编写的。例如像Murex这种受欢迎的交易系统,运用于与许多的银行前端链接,同样也是用Java编写的。

7、J2MEApps

虽然IOS和Android的到来几乎扼杀了J2ME的市场,但是仍然有很多的低端诺基亚和三星手机在使用着J2ME。曾经有段时间大部分的游戏,手机应用都是利用MIDP和CLDC,或者J2ME部分平台编写的,以适用于Android系统。J2ME依然在蓝光、磁卡、机顶盒等产品中流行着。app之所以如此流行是因为对于所有的诺基亚手机,app仍然适用于J2ME。

8、高频交易领域

Java平台已经大大提高了性能特点和JITS,并且Java也拥有像C级别的传输性能。因此,Java也流行于编写高并发系统。虽然Java的传输性能不比C,但你可以不用考虑Java的安全性,可移植性和可维护性等问题(Java内部已经实现好了),而且Java有着更快的运行速度。安全性等问题会使一个没有经验的C程序员编写的应用程序变得更加缓慢和不可靠。

9、科学应用

现在Java经常是科学应用的默认选择,包括了自然语言处理。这最主要的原因是因为Java比起C或者其他语言有更加的安全,可移植,可维护,而且Java有着更好的高级并发工具。

10、安卓Apps

如果你想知道Java应用在哪里,你离答案并不远。打开你的安卓手机或者任何的App,它们完全是用有着谷歌AndroidAPI的Java编程语言编写的,这个API和JDK非常相似。前几年安卓刚开始起步而到今日已经很多Java程序员是安卓App的开发者。

以上就是关于java可以开发.exe程序吗比如 windows记事本程序全部的内容,包括:java可以开发.exe程序吗比如 windows记事本程序、用Java编写一个程序,要求如下:、怎么用java编写一个程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10627717.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存