C ++ / Visual Basic与Java在一般级别上的区别(适用于初学者和学生)

C ++和Java是一些非常流行的编程语言。 可以对它们进行详细的比较,比较速度,类型,编译器等,但是对于一般的外行来说,这太多了,并且在一般的,基本的层次上考虑它们的差异将容易得多,因此,即使是一个远离编程并且可以自己得出结论的人只是看着这个区域。 在这个阶段,我们已经可以得出结论,哪种语言适合您。 是的,这种选择的情况是真实存在的,例如,出于教育目的的学生。

为此,我将尝试简要考虑一下编程语言的主要结构,即:

表达式:数学,逻辑,字符串;
运算符:复合语句,赋值语句,条件IF语句,FOR和WHILE循环,GOTO语句等;
子程序:程序和功能;
数据类型:基本类型,结构,类,接口和模板。

(本文不是翻译,而是我对收集到的信息的个人分析)

表达方式


爪哇


数学表达式


数学表达式是产生数字的表达式。 它们包括变量,函数和常量。

Java中的算术运算符使您可以执行加,减,乘等操作的标准数学运算。 在该语言中,还有减量和增量运算符(将值增加或减少1)。

逻辑表达式


逻辑表达式是对结果为true(true)或false(false)的表达式的描述。 逻辑运算符仅使用布尔类型的操作数。
具有两个操作数的所有逻辑运算符组合两个逻辑值以形成结果逻辑值。

Java支持十多个语句:AND(逻辑和缩写),OR(逻辑和缩写),XOR,NOT等。

字符串表达式


字符串表达式-字符串操作。 它看起来像一个数学表达式,但结果是换行了。

Java语言允许您添加,减去,拆分和连接字符串。 Java的一个独特功能是String类的存在,该类专门为处理字符串而提供。

C ++ / Visual Basic


数学表达式


C ++和Visual Basic还包括算术运算符,减量和增量运算符,并且数学表达式语法还支持方括号和一元减号。

与Java语言一样,它们具有作为内置函数可用的更复杂的操作,例如,平方根sqrt(x)和指数exp(x)。

逻辑表达式


Visual Basic使用六个运算符:除了AND,OR,NOT,XOR之外,还使用等价和隐含运算符。

在C ++中,它们使用三个逻辑运算符:AND,NOT和OR。 在考虑中的所有语言中,某些运算符可一次用于多个操作数。

字符串表达式


与Java不同,在C ++中,不对诸如字符串之类的对象提供内置支持,并且在必要时使用字符串(加法,减法等)包括头文件字符串。

在Visual Basic中,由于使用字符串的重要性,因此支持String数据类型,该数据类型表示字符序列。 这种类型的变量可以采用任何产生字符串的表达式。

经营者


爪哇


所有有问题的语言都相似,因为它们支持循环运算符(FOR,WHILE)和IF条件运算符,但是它们的显着区别是,在Java中,没有像这样的goto transition运算符:const和goto关键字被保存,但是,它们没有被使用。

C ++ / Visual Basic


比Java早得多开发的C ++和Visual Basic具有goto transition运算符,但是通常不希望使用此运算符。

程序和功能


爪哇


子程序是一组命名的,逻辑上完整的语言运算符,可以从程序中的各个位置调用多次以执行任意次。 函数将值返回主程序;过程不返回。
在Java中,没有过程或函数,这两个实体都称为方法,但是它们也可以返回或不返回值,可以带有或不带有参数来调用。

C ++ / Visual Basic


在C ++中,例程作为函数实现。 C ++程序由一个或多个函数组成,在使用它们之前必须先对其进行描述。
Visual Basic程序还包含几个例程,这些例程分为过程和函数。

资料类型


爪哇


在Java中,对于所有基本数字类型,独立使用某些约定,这些约定与环境的特定实现无关,这保证了在各种平台上都可重现的结果。此外,Java没有结构和联合构造,所有这些都结合在类的概念中。

此外,Java不支持指针(所谓的“链接”在Java中发挥作用),模板,运算符重载,结构等。

C ++ / Visual Basic


C ++从C继承了后者的所有常用数据类型。 这些类型用于表示各种大小和精度的整数和实数。 不幸的是,这些类型的实际范围和准确性取决于翻译器的特定实现。

由于对不同平台上的转换器的依赖性,C ++和Visual Basic代码的行为可以更改。 C ++试图通过使用联合(联合)声明结构(struct)和多态性,从而为程序员提供封装数据的能力。 这两种设计涵盖了在尺寸和对齐方式方面对机器关键性和灾难性的限制。

C ++和Visual Basic支持指针和指针算术,运算符重载等。

总结


Java语言是在其之前存在的语言(包括Visual Basic,尤其是C ++)的影响下开发的,这意味着这些语言的一定数量的构造是一致的,但是Java中修复了许多C ++缺陷,这影响了程序的性能和结果。 ,并且还采取了与C ++相比“简化”该语言的措施,这意味着Java和C ++之间存在显着差异。 尽管具有相似的构造,Java与C ++和Visual Basic还是有很大不同。

PS:以防万一,我要提一提的是,我不会在选择学习语言或考虑的最佳语言中提供建议,而只是提供思想上的帮助。 顺便说一句,您是如何选择第一种编程语言的?首先对您来说重要的是什么? 还是您“有义务”在大学里写一些特定的东西?

Source: https://habr.com/ru/post/zh-CN480112/


All Articles