当前位置:  技术问答>java相关

java到底好在哪里?(100分)

    来源: 互联网  发布时间:2015-07-20

    本文导语:  我研究vc的时间并不长,觉得vc、vb、bcb等工具是实实在在的软件开发工具。我看了不少关于java的文章和介绍,都说它有这样那样的优点,尤其是在安全性方面等等,可是我现在所见过的java程序无非就是web上的一些appl...

我研究vc的时间并不长,觉得vc、vb、bcb等工具是实实在在的软件开发工具。我看了不少关于java的文章和介绍,都说它有这样那样的优点,尤其是在安全性方面等等,可是我现在所见过的java程序无非就是web上的一些applet,却从未见过一个真正象用vc、vb或delphi等做的软件,而那些applet,我认为就算没有java也可以用cgi、php或asp做,而且很可能会更简捷。我想知道java到底好在哪里,有没有发展前途,这里想和高手们研究一下这个问题,请大家赐教!

|
只要你不用JNI(Java Native Interface),你写的Java程序理论上来讲可以原封不动在许多平台上执行,而且相对而言,Java是门比C++比较乾净的OO语言,前途应该是很光明

|
我首先申明,我不会JAVA,我是搞C/C++的。
我的一位同事是搞JAVA的,从他身上,我就看到了JAVA的很多优点。
在我从事Windows开发时,时不时都要关切操作系统是如何运作的,考虑消息循环、继承的复杂性、何时用指针何时用引用等等,然后再保证自己的程序的合理性,但我的同事却从不要考虑,就能实现我的程序的功能。
如果换一个操作系统,我要去重新熟悉这个操作系统的机制再开始编程,而我的同事这时就可以把他从前的程序原封不动移过来——他可以在旁边喝茶了。
不过JAVA的速度虽然是个问题,但绝不是个大问题。
哈哈,当然,我还是喜欢C/C++,还想搞搞ASM.

|
最大的好处就是跨平台性,要不微软怎么也弄出个C#来与它竞争呢?
当然还有一些其它的好处
安全的
高效的
中性的
健壮的
……

这些好处可以在JAVA“白皮书”上找到http://java.sun.com:80/doc/language_environment,若找不到就搜索吧

|
用Java开发的应用程序巨慢。 这是他最大的缺点。

     但只要你对速度的要求不是那么的苛刻, 也就是说可以容忍 Java 的速度的话, 相比而言, 他会大大减少开发的难度, 可以获得 C++ 1-1.5 倍的效率。

     在我们公司的 40 人做了16个月的一个系统中(Java应用程序, 现在还没有做完), 选用Java 当然有许多的考虑, 例如 跨平台, 安全性, 但最大的原因则如上所述。


|

   Java 只是一种精简化的 OO 语言,去掉了 OO 中的一些复杂的概念, 对面相对象的支持比不上 C++,更比不上 Small talk, Effel 等等比较纯的 OO 语言。
不过带来的好处是巨大的。

    Java 所标榜的跨平台性, 但许多系统对 Java 虚拟机的支持并不好,
HP对 Java的支持很糟糕, 这是公司放弃最终软件在HP上运行的最大的原因。  
不知道为什么, Windows 平台上的许多 Java 编译器
都有BUG, 包括 Sun 的一些冬冬。 可能是虚拟机的原因,我发现Windows平台下的纯Java应用程序有时候会莫名其妙的当掉。

    工具是死的,什么方便适用用什么呗!犯不着为这个争吵。 

|
以下是代碼連接:

try
    {Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
     String sourceURL=new String("jdbc:odbc:test");//test時資料來源
     DBConn=DriverManager.getConnection(sourceURL);
     statement=DBConn.createStatement();
     statement.executQuery("select * from .....);
    }
    catch(ClassNotFoundException e)
    {System.out.println(e);}
    catch(SQLException e)
    {System.out.println(e);}
  }

在Jbuilder中可以直接用控件連接,代碼不用寫自己給出,
具體去看看Jbuilder中Help->Dataexpress Refrence中有例子,還有圖,非常清楚,自己看吧

|
用Java开发的应用程序巨慢。 这是他最大的缺点。

     但只要你对速度的要求不是那么的苛刻, 也就是说可以容忍 Java 的速度的话, 相比而言, 他会大大减少开发的难度, 可以获得 C++ 1-1.5 倍的效率。

     在我们公司的 40 人做了16个月的一个系统中(Java应用程序, 现在还没有做完), 选用Java 当然有许多的考虑, 例如 跨平台, 安全性, 但最大的原因则如上所述。

撑握java并不是排斥其他语言,现在是java的时代,所以我们学习java,但技术一下在发展,没有一门语言可以一直统冶开发,终有一天java也会被取代,所以在学习java的同时,我建议了解一下新出现的语言如:delphi的替代语言,及c#等,不要等时代抛弃你再去学。
只要你不用JNI(Java Native Interface),你写的Java程序理论上来讲可以原封不动在许多平台上执行,而且相对而言,Java是门比C++比较乾净的OO语言,前途应该是很光明



|
Java主要用在服务器方面。JAVA要是离开网络,它的应用并不是很多。JAVA的OO是最好的!!C++完全不能与之比较!!

我热爱JAVA,请大家可以讨论讨论..

lcjly@sina.com.cn

|
Hi: 
  As the title said, the following is a piece of handout from one of Stanford U. Computer Science course
*************************************************************
CS193i, Stanford University Handout #30
Spring, 2000-01 Nick Parlante

Java Introduction
This is the outline for the Java section going over all the language basics in one session.

Java Qualities
Compiled to bytecode
Interpreted at runtime -- potentially slow
Interpreters are slower than compiled code, but they enable true portability 
Modern systems are not true interpreters -- they use some form of Just-in-time- Compile to build native code at runtime. Sun's "hot spot" system does this in a sophisticated way at runtime.

Realistically, not as fast as C, but getting closer. 

Java's dynamic features: safe pointers, garbage collection, etc. extract a penalty vs. C code.

Portable

Runs the same everywhere without even a re-compile. Very true for the core language. Less true for first GUI library, AWT, but the new GUI library Swing has fixed this.

Robust/Safe
Hard to crash, hard to write viruses


Structured -- typed
Java has a formal type system that must be obeyed at compile-time and run-time. This is helpful for larger projects, where the structure helps keep the various parts consistent. Contrast to Perl, which as more of a quick-n-dirty feel.

C/C++ Syntax
Fool the C/C++ programmers into thinking this is not much of a change 

OOP
The best way to structure code


Official "Blessed" libraries for common problems
Common classes: String, Collection, Date ...
GUI libs (AWT, Swing)

Threaded
Supports multiple threads of control built in to the language

Dynamic
Types/behaviors are determined at run-time (most flexible, at the cost of some efficiency).

Automatic garbage collector takes care of memory management.

*************************************************************************
Point: Somewhat slow + portable + programmer efficiency features
**************************************************************************
Programmer Efficiency
Faster Development
Building an application in Java takes about 30% less time than in C or C++

Libraries
Code re-use at last -- String, ArrayList, ... (C++ can also do this to an extent)

Memory errors
Memory errors largely disappear because of the safe pointers and garbage collector. I suspect the lack of memory errors accounts for much of the increased programmer productivity.

Java Niche
CPU time vs. Programmer time tradeoff

Portability
Send code from one place to another Avoid vendor lock-in
Microsoft hates this feature (in any domain, it's natural for the largest vendor to dislike portability, while the small vendors and the customers like portability).

Applets
Java code, runs in the browser in a "sandbox" Did not work that well
Not well implemented the first time -- AWT not well done, in-the-browser 
 concept is fragile
Microsoft not helping
Custom server side applications

A good match for Java qualities -- robust/safe, programmer efficient, portable (e.g. develop on NT, deploy on Solaris, Linux, ...)

|
JAVA体贴又周到,有独有的竖式凹道,防止侧漏,用了都说好!!!
:)

    
 
 

您可能感兴趣的文章:

  • 我想学Java,但不知道Java的实用的开发工具有那些,Java主要用在哪些方面,EJB到底是什么东西??
  • 初哥问题:JAVA和JSP到底是啥关系??????????
  • 特别推荐!用java到底能干些什么!!!!
  • Internet Explore 6.0 到底支不支持持JAVA?
  • java到底有没有前途和钱途?(2年之内)
  • 一个极其菜的问题:JAVA,VISUAL J++,JAVA SCRIPT,EJB,它们之间到底有什么关系,谢谢!
  • 菜鸟求救: 到底应该如何学习java???
  • java sdk 与jdk到底有何区别?
  • vc,delphi&java三者之中到底谁更能支持面向对象技术?
  • Java在美国很火是事实,它到底火在哪?!
  • 请问java到底包括那些东西?
  • redhat 9 下安装 oracle9i 过程中,要求指定java目录,到底是哪一个目录?
  • 到底有多少人用J++开发java的??
  • java到底有多少个关键字?
  • servlet和java bean 到底是什么关系呀???
  • 关于到底什么才是最好的Java开发工具的讨论
  • java中的import和C中的include到底有什么区别?
  • 刚接触java:关于jdk和sdk的区别到底是什么呢??
  • 请教一个问题,JAVA到底用来做什么?
  • JAVA语法里的VOID到底怎么用呀?我不知道什么时候加到类或者方法里!?
  • 100分!100份!请教如何做java平台与matlab的连接问题!
  • 谁有java函数大全,100重酬!!
  • 能不能用JAVA做一个OICQ的客户端? 100分~~~~
  • 怎样才能用java实现结构体数组,最好有代码!谢了!送上100分!!!!
  • 请教高手:在java中如何禁止屏幕考屏,就是Print Screen键。100分
  • java面向对象编程指南-100分奉上
  • 100分求java +VC6.0使用JNI的最简单例子
  • 100分求<<JAVA编程思想>>电子版
  • 100分,求Complete Java 2 Certification Study Guide的完整版!!!
  • 谁有java或jsp的帮助文件,寄个给我,100全给了!不够还给
  • 请问哪里有《java实例技术手册》的电子书下载?100分赠送!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.sql类types的类成员方法: java_object定义及介绍
  • 我想学JAVA ,是买THINK IN JAVA 还是JAVA2核心技术:卷1 好???
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: imageflavor定义及介绍
  • 请问Java高手,Java的优势在那里??,Java主要适合于开发哪类应用程序
  • java命名空间java.lang.management类managementfactory的类成员方法: getcompilationmxbean定义及介绍
  • 如何将java.util.Date转化为java.sql.Date?数据库中Date类型对应于java的哪个Date呢
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getlibrarypath定义及介绍
  • 谁有电子版的《Java编程思想第二版(Thinking in java second)》和《Java2编程详解(special edition java2)》?得到给分
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getstarttime定义及介绍
  • 本人想学java,请问java程序员的待遇如何,和java主要有几个比较强的方向
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: stringflavor定义及介绍
  • 我对JAVA一窍不通,可惜别人却给我一个Java的project,要我做一个安装程序,请问哪里有JAVA INSTALLER下载,而且我要不要安装java的sdk才能完成此项任务?
  • java命名空间java.security类keystore的类成员方法: getdefaulttype定义及介绍
  • 新年第一天,让我们讨论一下未来一年JAVA的发展趋势! 个人认为,JAVA将主要朝ERP和JAVA手机方面发展!
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getclasspath定义及介绍
  • WEB前端 iis7站长之家
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: javaserializedobjectmimetype定义及介绍
  • 各位学java的朋友,学java的未来是什么,你们学java都用来开发什么项目啊!来者给分!!
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: javafilelistflavor定义及介绍
  • 请问java程序中的import为什么有的用java.….*,而有的又用java.….…,有什么区别吗?
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getvmname定义及介绍
  • 简单说说Java SE、Java EE、Java ME三者之间的区别


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3