C语言和JAVA语言基础语法对照

合集下载

java与c#的语法对比

java与c#的语法对比

java与c#的语法对⽐1,命名空间与包C#为了把实现相似功能的类组织在⼀起,引⼊了命名空间的概念(namespace)Java中与此对应的东西叫做包(package)2,类的访问控制⽅⾯的不同C#只有两种:public和默认(同internal)public能被所有的类(同项⽬中和不同项⽬中)访问internal(在class关键字前不加控制符时默认为internal),表明类只能在同⼀项⽬中访问Java也只有两种:public和默认public能被所有的类访问默认(在class关键字前不加控制符时)只能被同⼀包中的所有类访问3,类成员的访问控制C#中有四种:public,protected,private(默认),internal(注意这⾥internal和默认是不同的)public能被所有的类访问protected只能被⼦类访问private(也即不写任何控制符时的默认情况下)只能类内部访问internal能被同⼀项⽬中的类访问Java也有四种:public,protected,private和默认public能被所有的类访问protected既能被同⼀个中的其他类访问,也可以被不同包中的⼦类访问private只能在类内部使⽤默认可以被这个包中的其他类访问,如果⼀个⼦类与⽗类位于不同的包中,⼦类也不能访问⽗类中的默认访问控制成员4,C#中类的继承⽤通过冒号:实现,在Java中⽤extendsC#中实现接⼝通过冒号:实现,在Java中⽤implementsC#中密封类⽤sealed实现,在Java中⽤finalC#中常数⽤const实现,在Java中⽤finalC#中属性⽤set,get代码块实现,在Java中⼀般⽤类似于C#中的字段代表属性,或者⽤setter,getter构造器实现C#中有部分类(partial)的概念,Java中没有C#中有readonly修饰属性只读,Java中没有C#中有virtual和override修饰虚⽅法和重写⽅法,Java中没有,Java中默认⽗类中的⽅法都是virtual的Java中有static{},synchroized{}代码块的概念,C#中没有Java中有标签(如labelA:)的概念,C#中没有C#中⼦类调⽤⽗类的⽅法⽤base.method(),Java中⽤super.method()C#中⽤is来判断⼀个实例是否是某⼀个类的,Java中⽤instanceofC#中⽤foreach(int i in array)来对数组中每⼀个元素的遍历,Java中⽤for(int i : array)~~~~~~~~~~~~~~~~~~~~~1. C#命令输⼊和输出语法是:Console.ReadLine()和Console.WriteLine()(当然不换⾏的话就去掉Line,这些想必⼤家都知道,所以⽂章中只提供⽐较常⽤的)。

Java和C或C++的数据类型对照表

Java和C或C++的数据类型对照表

Java和C或C++的数据类型对照表java的数据类型和C++的对应关系(⼤部分可⽤,⼩部分需要根据实际情况调整)C++Javachar *Stringword shortbyte bytebyte[]byte[]dword intlong NativeLongVoid *Pointerlpvoid PointerlpDword IntByReferenceHWND HWNDchar[]byte[]byte *PointerJava和C的数据类型对照表Java类型C类型原⽣表现boolean int32位整数(可定制)byte char8位整数char wchar_t平台依赖short short16位整数int int32位整数long long,__int6464位整数float float32位浮点数double double64位浮点数Buffer/Pointer pointer平台依赖(32或64位指针)pointer/array32或64位指针(参数/返回值)邻接内存(结构体成员)String char*/0结束的数组(nativeencodingorjna.encoding)WString wchar_t*/0结束的数组(unicode)String[]char**/0结束的数组的数组WString[]wchar_t**/0结束的宽字符数组的数组Structure struct*/struct 指向结构体的指针(参数或返回值)(或者明确指定是结构体指针)结构体(结构体的成员) (或者明确指定是结构体)Union union等同于结构体Structure[]struct[]结构体的数组,邻接内存Callback(*fp)()Java函数指针或原⽣函数指针NativeMapped varies依赖于定义NativeLong long平台依赖(32或64位整数) PointerType pointer和Pointer相同。

java基础知识点笔记

java基础知识点笔记

java基础知识点笔记Java是一门非常重要的计算机语言,具有良好的跨平台性和易读性和易学性。

尤其是基于Java开发的移动端和Web端产品,其优秀的性能和可扩展性在行业中得到了广泛的青睐。

作为Java开发工程师,熟练掌握Java的基础知识非常重要。

一、Java基本语法Java程序包含一个或多个类,不同类可以相互调用使用。

每一个Java程序都需要有一个入口点,即main()函数。

在Java中,注释采用“//”或“/*...*/”的形式,可以单行或多行注释。

Java变量需要先声明再使用,可以定义基本类型变量和引用类型变量。

Java中的运算符包括算术运算符、逻辑运算符等。

二、Java面向对象编程Java是一门面向对象的编程语言,对象是Java程序的基本组成单元。

Java中的类封装了数据和方法,可以实现类的继承和多态。

在Java中,使用构造函数实例化对象,可以使用访问控制符来控制类成员的访问权限。

三、Java流程控制语句Java中的流程控制语句有条件语句(if、if-else、switch)、循环语句(while、do-while、for)等。

其中,if语句可以进行嵌套,switch语句可以使用break语句避免case穿透问题。

四、Java数组Java中的数组是一组相同类型的数据序列,从0开始编号,使用方括号表示。

在Java中可以使用foreach来遍历数组,也支持多维数组。

五、Java异常处理Java程序中的异常指的是程序出现的错误。

异常处理是Java程序中的一部分,可以使用try-catch语句来捕获并处理异常。

Java中的异常类型包括运行时异常和受检查异常。

六、Javaio编程Java中的文件和I/O操作称为io编程。

Java的io编程采用字节流和字符流,其中字节流用于处理二进制数据,字符流用于处理文本数据。

Java中的io操作需要进行文件的读取、写入等操作,可以使用File类来操作文件。

七、Java线程Java程序中,线程指的是一条执行序列,Java中的线程可以继承Thread类或实现Runnable接口。

java、javac命令用法

java、javac命令用法

java、javac命令用法在Java编程语言中,java命令用于运行Java程序,而javac命令用于编译Java源代码文件。

1. java命令用法:-先使用javac命令将Java源代码文件编译成字节码文件(.class文件)。

-然后使用java命令运行编译后的字节码文件。

-命令格式:java [选项] [主类名] [参数]-选项和参数是可选的,主要用于指定虚拟机参数和传递给Java 程序的参数。

-主类名指定要运行的Java程序的入口类名。

如果程序中不存在main方法,则无法执行。

例如,要运行名为"HelloWorld"的Java程序:```javac HelloWorld.java //编译Java源代码文件java HelloWorld //运行编译后的字节码文件```注意:java命令默认在同一目录中查找字节码文件,如果字节码文件位于其他目录中,需要指定文件的路径。

2. javac命令用法:- javac命令用于将Java源代码文件编译成字节码文件。

-命令格式:javac [选项] [源文件]-选项主要用于指定编译参数,例如输出目录、类路径等。

-源文件是需要编译的Java源代码文件名。

例如,要编译名为"HelloWorld.java"的Java源代码文件:```javac HelloWorld.java //编译Java源代码文件```编译成功后会生成对应的字节码文件"HelloWorld.class"。

拓展:- java命令还可以通过-classpath/-cp选项指定类路径,以便在运行Java程序时指定需要引用的类文件的路径。

- javac命令可以用于编译多个Java源文件,可以一次性编译整个项目,也可以使用通配符模式编译指定目录下的所有源文件。

-除了java和javac命令,还有其他一些相关的Java命令,例如javadoc用于生成API文档、jar用于创建JAR文件等。

常见编程语言语法规范的对比与比较

常见编程语言语法规范的对比与比较

常见编程语言语法规范的对比与比较编程语言是计算机与人交流的桥梁,它们通过一套特定的语法规范来定义程序的结构和行为。

在软件开发过程中,选择合适的编程语言对于项目的成功至关重要。

本文将对几种常见的编程语言的语法规范进行对比与比较,帮助读者选择适合自己的编程语言。

1. C语言C语言是一种低级的、面向过程的编程语言,它的语法规范相对简单明了。

C语言的语句以分号结尾,函数由花括号括起来。

C语言中变量的声明需要指定类型,并且需要在使用之前进行定义。

C语言提供了丰富的运算符和控制结构,使得程序员可以灵活地控制程序的执行流程。

2. C++C++是在C语言基础上发展而来的一种编程语言,它支持面向对象编程。

C++语法规范与C语言相似,但在语法上做了一些扩展和改进。

C++引入了类的概念,允许程序员定义自己的数据类型和操作。

C++还提供了许多特性,如继承、多态和模板等,使得程序的设计更加灵活和可扩展。

3. JavaJava是一种跨平台的高级编程语言,它的语法规范与C++类似,但在一些细节上有所不同。

Java是一种面向对象的语言,所有的代码都必须包含在类中。

Java中的变量声明需要指定类型,并且需要在使用之前进行定义。

Java提供了垃圾回收机制,使得内存管理更加方便。

Java还引入了异常处理机制,使得程序的错误处理更加规范和可靠。

4. PythonPython是一种简洁而强大的编程语言,它的语法规范与C语言和Java有很大的区别。

Python不需要显式地声明变量类型,它使用动态类型系统。

Python的代码块通过缩进来表示,而不是使用花括号。

Python提供了丰富的内置函数和库,使得程序的编写更加高效和简洁。

Python还支持面向对象编程和函数式编程,使得程序的设计更加灵活和可读性更强。

5. JavaScriptJavaScript是一种用于网页开发的脚本语言,它的语法规范与C语言和Java有一些相似之处,但也有一些独特的特性。

C语言和JAVA语言基础语法对照

C语言和JAVA语言基础语法对照

C语言和JA V A语言基础语法对照1、标识符C语言中标识符由英文字母和下划线开头,后面可以跟英文字母、下划线、数字等字符组成的字符序列。

JA V A语言中标识符由英文字母、下划线、货币符号(如¥、$等)开头,后面可以跟英文字母、下划线、货币符号、数字等字符组成的字符序列。

2、基本数据类型C语言中常用的基本数据类型有:int(4字节)、float(4字节)、double(8字节)、char(1字节)、long(4字节)等。

JA V A语言中常任的基本数据类型有:int(4字节)、float(4字节)、double(8字节)、char (2字节)、long(8字节)、byte(1字节)、boolean等,且JA V A不支持指针、结构体。

3、常量的定义C语言中,如:#defing PI 3.14(预处理命令)JA V A语言中,如:final int PI=3.14;(语句)4、布尔类型布尔类型数据用boolean定义,如boolean b=true;布尔类型数据只有true和flase二个值,经常用于流程控制。

5、字符类型一个字符用一个16位的Unicode码表示。

JA V A的字符类型数据与整形不同,不能用作整数。

但是可以把整形数据与字符型数据放在一起运算,字符型会自动转换成整形,从整形向字符型转换时需要强制类型转换。

6、浮点类型一个浮点数隐含为double类型,在一个浮点数后面加字母F或f,表示float类型,如3.14是double型,3.14f是float型。

7、运算符(1)取余运算符a%bC语言中a,b都必须是整形数据。

JA V A语言中a,b可以是整形数据,也可以是浮点数据。

(2)“+”运算符JA V A对“+”运算作了扩展,可作为字符串的连接运算符,如”ab”+”cd”得到”abcd”。

(3)在JA V A语言中,关系运算和逻辑运算的结果是true和flase,而不是1和0。

8、数组(1)一维数组定义格式:类型数组名[]或者类型[] 数组名,如int a[];或者int[] a;这里只有数组变量的定义,没有为数组分配空间,在数组名后面的[]内不能指定数组的长度。

C#与Java语法比较异同

C#与Java语法比较异同

C# ,java语法比较1. 源文件方面。

C#可以在一个.cs 文件中。

出现多个name sapce(命名空间,有些类似于pacakage),并定义多个类。

C#包含有预处理指令。

2. 数据类型方面。

a) C#定义了struct(结构),不能是抽象的,也不能被继承,是值类型的。

b) C#没有基本类型的概念,全部是面向对象的类型,int是Int32的简写。

c) 在Java中const是保留字,final与C#中的const意思相同,C#中还有readonly 允许运行时赋初值。

d) 字符串比较,C#中可以用=比较值,与Java一样用StringBuffer来减少内存开销。

3. 运算符方面。

C#增加了Checked和Unchecked以绕过编译错误。

比如“把一个long 付给int32 ,如果高32为零则不会出错,否则会有溢出错误,unchekced就是告诉编译器不要去管溢出,尽你可能转化”4. 分支语句方面。

在Java中goto是保留字。

C#中switch中的case不会顺序执行,末尾必须有break或者goto关键字。

5. 循环语句好像没有什么不同的。

6. 访问修饰符方面。

在范围放main,C#增加了internal和protected internal,前者表示只能从当前程序集内可见,即可以在编译时可Assembly的DLL或EXE,类似于JAR;后者表示对当前程序集或者从此包含类继承的类可见。

Sealed相当于Java中的final关键字。

7. 方法方面。

与Java相同,只有基本类型通过值传递,其他都是传递引用。

不过C#也可以以引用的方式传递基本类型,利用ref关键字。

而out关键字有些类似于Oracle存储过程,与ref的区别在于:方法忽略out参数初始值,方法必须为out参数赋值。

8. 属性方面。

Getter和Setter的写法不太一样。

9. 继承方面。

C#增加了base关键字以指向父类。

Java基础知识总结(超详细整理)

Java基础知识总结(超详细整理)

Java基础知识总结(超详细整理)Java语⾔的特点1.⾯向对象⾯向对象(OOP)就是Java语⾔的基础,也是Java语⾔的重要特性。

⾯向对象的概念:⽣活中的⼀切事物都可以被称之为对象,⽣活中随处可见的事物就是⼀个对象,我们可以将这些事物的状态特征(属性)以及⾏为特征(⽅法)提取并出来,并以固定的形式表⽰。

2.简单好⽤Java语⾔是由C和C++演变⽽来的,它省略了C语⾔中所有的难以理解、容易混淆的特性(⽐如指针),变得更加严谨、简洁、易使⽤。

3.健壮性Java的安全检查机制,将许多程序中的错误扼杀在摇蓝之中。

另外,在Java语⾔中还具备了许多保证程序稳定、健壮的特性(强类型机制、异常处理、垃圾的⾃动收集等),有效地减少了错误,使得Java应⽤程序更加健壮。

4.安全性Java通常被⽤在⽹络环境中,为此,Java提供了⼀个安全机制以防恶意代码的攻击,从⽽可以提⾼系统的安全性。

5.平台⽆关性Java平台⽆关性由Java 虚拟机实现,Java软件可以不受计算机硬件和操作系统的约束⽽在任意计算机环境下正常运⾏。

6.⽀持多线程在C++ 语⾔没有内置的多线程机制,因此必须调⽤操作系统的多线程功能来进⾏多线程程序设计,⽽ Java 语⾔却提供了多线程⽀持。

多线程机制使应⽤程序在同⼀时间并⾏执⾏多项任务,该机制使得程序能够具有更好的交互性、实时性。

7.分布式(⽀持⽹络编程)Java语⾔具有强⼤的、易于使⽤的⽹络能⼒,⾮常适合开发分布式计算的程序。

java中提供了⽹络应⽤编程接⼝(),使得我们可以通过URL、Socket等远程访问对象。

8.编译与解释共存Java语法基础标识符: ⽤来标识类名、对象名、变量名、⽅法名、类型名、数组名、⽂件名的有效字符序列。

合法的标识符:由字母、数字、下划线“_”、美元符号“$”或者“¥”组成,并且⾸字符不能是数字。

不能把java关键字和保留字作为标识符。

标识符对⼤⼩写敏感。

关键字:Java语⾔中已经赋予了特定含义的保留字: const、goto,Java版本中尚未使⽤,但以后版本可能会作为关键字使⽤变量:程序运⾏期间可以被改变的量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言和JAVA语言基础语法对照
1、标识符
C语言中标识符由英文字母和下划线开头,后面可以跟英文字母、下划线、数字等字符组成的字符序列。

JAVA语言中标识符由英文字母、下划线、货币符号(如¥、$等)开头,后面可以跟英文字母、下划线、货币符号、数字等字符组成的字符序列。

2、基本数据类型
C语言中常用的基本数据类型有:
int(4字节)、float(4字节)、double(8字节)、char(1字节)、long (4字节)等。

JAVA语言中常任的基本数据类型有:
int(4字节)、float(4字节)、double(8字节)、char(2字节)、long (8字节)、byte(1字节)、boolean等,且JAVA不支持指针、结构体。

3、常量的定义
C语言中,如:
#defingPI
3.14(预处理命令)
JAVA语言中,如:
finalintPI=
3.14;(语句)
4、xx类型
布尔类型数据用boolean定义,如booleanb=true;布尔类型数据只有true和flase二个值,经常用于流程控制。

5、字符类型
一个字符用一个16位的Unicode码表示。

JAVA的字符类型数据与整形不同,不能用作整数。

但是可以把整形数据与字符型数据放在一起运算,字符型会自动转换成整形,从整形向字符型转换时需要强制类型转换。

6、浮点类型
一个浮点数隐含为double类型,在一个浮点数后面加字母F或f,表示float类型,如
3.14是double型,
3.14f是float型。

7、运算符
(1)取余运算符a%b
C语言xxa,b都必须是整形数据。

JAVA语言中a,b可以是整形数据,也可以是浮点数据。

(2)“+”运算符
JAVA对“+”运算作了扩展,可作为字符串的连接运算符,如”ab”+”cd”得到”abcd”。

(3)在JAVA语言中,关系运算和逻辑运算的结果是true和flase,而不是1和0。

8、数组
(1)一维数组
定义格式:
类型数组名[]或者类型[]数组名,如int a[];或者int[] a;这里只有数组变量的定义,没有为数组分配空间,在数组名后面的[]内不能指定数组的长度。

数组被定义后,还必须用new运算符为其分配空间,在分配空间时指定数组的大小。

数组的大小确定后,就不能再改变。

如:
a=new int[5];
在定义数组时,也可以同时为数组分配空间,如int a[]=new int[5];
每个数组都有一个属性length,指明它的长度,如a.length。

(2)二维数组
定义格式:
类型数组名[][]或者类型[][]数组名,如int[][] a;或者int a[][];
分配空间:
a=new int[2][3];。

相关文档
最新文档