A Compared Overview of C ++, C #, And Java

xiaoxiao2021-03-06  39

/ ************************************************** *********************************************************** ***********

A Compared Overview of C , C #, And Java

Quick and Rough Comparisons of Various Features of C , C #, and Java.

Just for Those Built Into The Language Itself, NOT Capabilities Supported by Libraries.

*********************************************************** *********************************************************** ********** /

/ *

FEATURES OVERVIEW

C C # java

-------------------------------------------------- -------------------------------------------------- -----------

Array Bounds Checking N Y Y Y Y

Built-in strings n y y y

Conditional Compilation Y Y y N

COVARIANT RETURN TYPES Y N n

Direct Access To C Y N N

Direct Access to Hardware Y N N

Direct Native Code Generation Y N N

Dynamic Class Loading N y y

ENUMERATED TYPES Y Y N

Exception Handling Y Yexplicit Memory Allocation Control Y N N

Function delegates N y n

Function Overloading Y Y Y Y Y Y Y Y

Garbage Collection N y y y y y y y y y

Generates Standard Object Files Y N

Guaranteed Initialization N y y y

Inline assembler y n n

Inner Classes n n y

Interfaces y (*) Y Y Y Y Y Y Y Y Y Y Y Y

Independent Of VM Y N n

Lightweight arrays y n n

Lightweight Objects y y y y y

Macro Text Preprocessor Y N N

Modules Y Y Y Y

Multiple Inheritance Y n nnested functions n n n

Operator overloading y y n

Out function parameters y y y y y

Properties n y n

Static Construction Order N Y Y Y Y Y Y

String switches n y y y

Templates y n (*) n (*)

Thread Synchronization Primitives N y y y

Try-catch-finally blocks n y y

Use existing debuggers y n n

-------------------------------------------------- -------------------------------------------------- -----------

2. Keywords

Notice, The Same Keyword May Have Subtle Difference In Different Languages ​​in A Way.

C C # java

-------------------------------------------------- -------------------------------------------------- -----------

Abstract n y y

ask N Y NBASE N Y N

BOOL Y Y N

Boolean N y

Break y y y

Byte n y y

Case y y y

Catch y y y

CHAR Y Y Y Y Y

Checked N y n

Class y y y

Const Y Y Y

Const_cast y n n

Continue Y Y Y Y

Decimal N y n

DEFAULT Y YDELEGATE N Y N

Delete Y n n

Do Y Y Y Y Y Y Y

Double y y y

Dynamic_cast y n n

Else y y y

ENUM Y Y N

Extends n n y

Event N y n

Explicit y y n

EXTERN Y y N

False Y Y Y Y Y Y

Final n n y

Finally n y y y

Float y y y y y y y y y y y y y y y y y

Foreach n y n

Friend y n n

Goto y y y (*)

IF Y Y Y Y Y

IMPLEMENTS N y

Implicit N y n

IMPORT N y

In n y n

InstanceOf n y y

Inline y n n

Int y y y y y y y y y y y y

Interface N y y y

INTERNAL N Y N

IS N y nlock n y n

Long y y y

Mutable y n n

Namespace y y y

Native N n y

New y y y

null n y y

Object n y n

Operator y y

Out n y n

Override n y n

Params n y n

Package n n y

Private y y y

Protected y y ypublic y y y y

Readonly N y n

Register y n n

Ref n y n

Reinterpret_cast y N n

Return Y Y Y Y Y

Sbyte n y n

Sealed n y n

Short y y y

Signed Y n n

SIZEOF Y Y

Stackalloc N y n

Static Y Y Y Y

Static_cast y n n

Strictfp n n ysuper n n y

String n y n

Struct y y n

Switch y y y

Synchronized n n y

Template Y N n

THIS Y Y Y Y

Throw y y y

Throws n n y

Transient N N Y

True Y Y Y Y Y Y

Try y y y

TypeDef y n n

TYPEOF N Y n

TYPEID Y N NTYPENAME Y N

Uint N y n

Ulong N y n

Unchecked n y n

UNSAFE N Y N

Ushort n y n

Union Y N

Unsigned y n n

Using y y n

Virtual y y n

Void y y y

Volatile Y Y Y Y Y Y

While y y y

-------------------------------------------------- -------------------------------------------------- -----------

3. Operators

C C # java

-------------------------------------------------- -------------------------------------------------- ----------- Addition

Subtraction - - - -

MultiPlication * * *

Division / / /

Integer Division /

MODULUS%%%

Assignment = = =

Addition Assignment = = =

Subtraction associNMent - = - = - =

MULTIPLICATION ASSIGNMENT * = * = * =

Division associNMent / = / = / =

Integer division associNMent / =

MODULUS Assignment% =% =% =

LEFT Shift << << <<

Right shift >> >> >> LEFT shift assignment << = << = << =

Right shift assignment >> = >> = >> =

Bitwise and & & & & &tes

Bitwise Inclusive or | | | | | |

Bitwise Exclusive or ^ ^ ^

Logical and && && && && &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

Logical or || || ||

Logical Negation!!!

Bitwise and Assignment & = & = & =

Bitwise Exclusive or Assignment ^ = ^ = ^ =

Bitwise Inclusive or Assignment | = | = | =

One's Complement ~ ~ ~

Less Than <<<<<<<<<<<<<<

Less tour or equal to <= <= <= greater tran>>>>

Greater Than or Equal to> => => =

Equality == == ==

NOT Equal! =! =! =

Compare reference type x is myclass x instanceof myclass

Compare string some functions == or string.equals () String.equals ()

Concatenate String

Scope resolution ::. And base

Subscript [] [] []

Function Call () () ()

Type Conversion (Sometype) and Something Else (SomeType)

OR ->.

Postfix Increment

Postfix Decrement - - --- Indirection * * (for unsafe code)

Address-of & & & && (for unsafe code)

Prefix Increment

Prefix Decrement - - -

Size of Type SizeOf Sizeof

COMMA,

Conditional?:?:?:?

Pointer-to-member. * Or->. (For unsafe code)

REFERENCE &

-------------------------------------------------- -------------------------------------------------- -----------

4. Simple Escape Sequences

C C # java

-------------------------------------------------- -------------------------------------------------- -----------

/ a y y n

/ b y y y

/ f y y y

/ N y y y / r y y y y y y

/ t y y y

/ v y y n

/ "Y y y

/ 'Y y y

// y y y

-------------------------------------------------- -------------------------------------------------- -----------

5. Comments

C C # java

-------------------------------------------------- -------------------------------------------------- -----------

// y y y

/ * * / Y y y

/ ** * / n n y

/// n y n

-------------------------------------------------- -------------------------------------------------- -----------

* /

转载请注明原文地址:https://www.9cbs.com/read-58498.html

New Post(0)