JavaScript 与Java、Java applet都有啥区别?各是做啥的?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript 与Java、Java applet都有啥区别?各是做啥的?相关的知识,希望对你有一定的参考价值。
javascript是网页制作用得脚本语言,比如说html中嵌入<script>XXX</script>,XXX表示要实现的功能,但只是简单的页面交互功能,在浏览器中实现,不涉及后台数据库。狭义的java是一种面向对象的计算机语言,一次编写到处运行,即跨平台性。广义的java不仅包括java语言,还有java开发平台jdk,运行平台虚拟机jvm
Java Applet就是用Java语言编写的一些小应用程序,它们可以直接嵌入到网页中,并能够产生特殊的效果,现在已经不怎么用了。
希望对你有所帮助 参考技术A 简单点说:javascript是网页开发的脚本语言,很灵活也很强大;
java是一种面向对象的程序开发语言,也是目前世界上使用最广泛的开发语言,支持跨平台开发,支持form,web,MobilPhone...等开发,应用范围很广;
java applet是用java开发的一种小程序,可以嵌入到网页中使用; 参考技术B Java applet是JAVA中的一部分,小程序,而且现在都已经不用了;JavaScript是网页脚本语言,可以说跟JAVA其实没什么关系,命名上的类似只是出于商业原因。。可以说就是JS替代了Java applet。。。 参考技术C JavaScript 和Java 虽然名字都带有Java,但它们是两种不同的语言,也可以说是两种互不相干的语言:前者是一种基于对象的脚本语言,可以嵌在网页代码里实现交互及控制功能,而后者是一种面向对象的编程语言,可用在桌面应用序、Internet 服务器、中间件、嵌入式设备以及其他众多环境。
Java applet 是用Java 语言编写的、有特定用途的应用程序,其直接嵌入到HTML 页面中,由支持Java 的浏览器解释执行并发挥其特定功能,大大提高Web 页面的交互和动态执行能力,包含applet 应用程序的页面被称为Java-powered 页。
与其他应用程序不同,applet 应用程序必须通过<applet>和</applet>标记对将自己内嵌到HTML 页面中,当支持Java 的客户端浏览器遇到该标记对时,立即下载该applet 并在本地计算机上执行。执行的过程中它可从目标页面中获得相应的参数,并产生相应的功能,与Web 页面进行交互,实现页面的动态效果。
参考资料:http://www.skyasp.net/news/?136.html
本回答被提问者和网友采纳Android中Java与JavaScript之间交互(转)
Android代码:
package com.fyfeng.testjavascript; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.util.Log; import android.webkit.WebView; import android.widget.Toast; public class MainActivity extends ActionBarActivity { private static final String tag = MainActivity.class.getSimpleName(); WebView webView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); webView = (WebView) this.findViewById(R.id.webview); webView.getSettings().setJavaScriptEnabled(true);//设置可以JavaScript webView.loadUrl("http://192.168.1.104:8080/examples/");//加载网页 webView.addJavascriptInterface(new PayYa(), "pay");//定义一个支付结果,模拟。PayYa为支付接口处理类。 } public void onClickPay() { Intent intent = new Intent(this, SecondActivity.class);//模拟打开另外一个支付界面。 startActivityForResult(intent, 1000); } public void onPayCallback(String result) { Log.d(tag, "result = " + result); webView.loadUrl("javascript:payCallback(‘" + result + "‘);");//通知网页支付结果。 } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) {//支付结果返回 Log.d(tag, "requestCode = " + requestCode + ", resultCode = " + resultCode); switch (requestCode) { case 1000: { if (Activity.RESULT_OK == resultCode) { onPayCallback("hello, 这是支付结果. !"); } break; } } } public final class PayYa { @android.webkit.JavascriptInterface public void pay(String hello) {//支付请求处理函数 Log.d(tag, "pay = " + hello); onClickPay(); } public void show(String args) {//这个函数是为了辅助显示网页中的alert对话框。 Toast.makeText(getApplicationContext(), args, Toast.LENGTH_SHORT).show(); } } }
网页部分代码:
<!DOCTYPE HTML><html lang="en"><head> <meta charset="UTF-8"> <title>Apache Tomcat Examples</title> <script type="text/javascript"> function doPay(args){ javascript:pay.pay(args+(new Date()));//调用Android本地支付接口函数,参数为args+new Date(); pay为在Android原生应用代码中定义的一个支付对象,这个支付对象有个pay(...)方法。 //javascript:pay.show("hello"); } function payCallback(args){//Android本地支付处理完毕回调该函数,并把支付结果传递到该函数。 //alert("pay callback = "+args); //打印支付结果。 javascript:pay.show(args); ////在Android的WebView中无法显示Alert对话框,只能借助Android原生Toast或者Dialog来显示。 } </script> </head> <body> <button onclick="doPay(‘hello‘)">doPay</button><!-- 点击支付事件。 --> </body>
</html>
以上是关于JavaScript 与Java、Java applet都有啥区别?各是做啥的?的主要内容,如果未能解决你的问题,请参考以下文章
Android WebView实现原生与JavaScript的交互