1.static关键字:

  在java中静态成员能够被对象和类名调用;

  在C#中,静态成员只能被类调用不能被对象调用。

2.for循环:

  在java中可以在for前面添加标记,然后在for循环中可以break指定标记的for循环;

  而在C#中,break是跳出当前的for循环,没有标记这东西。

3.构造函数调用:

  在java中,在构造函数中调用构造函数是通过"this(参数1,参数2...)"直接在构造函数的函数体中调用;

  而在C#中是通过在构造函数后面 ":this(参数1...)",例如----public Person(string name,int age,int weigh):this(name,age)。

4.构造代码块和静态代码块

  在java中,可以定义构造代码块,构造代码块的意思是,在一个类中,直接在“{写代码}”写代码,这个代码块是在每实例化一个类对象时就加载;静态代码块的意思是“static{写代码}”中写代码,是在类加载时执行一次,仅执行一次。是在用到类的东西才会执行以上两个概念,如果只是声明(没有初始化或者只是初始化为null)则没有加载,比如在Person类中有以上两个概念,这时声明Person p=null;这样是不会执行以上两个概念中的代码,如果Person p=new Person();这样就会调用到以上两个概念。静态代码块比构造代码块先执行,因为是先有类才有对象。执行顺序:静态代码块->静态属性建立并初始化->有默认值得属性初始化->构造代码块->构造函数

  在C#中,没有构造代码块和静态代码块的概念。

5.继承的关键字

  在java 中,继承是通过extends关键字,class A extends B;

  在C#中,继承是通过在类名后面"class A:类B",没有关键字。

6.调用父类构造函数的方式不大一致

  在java 中,如果不显示指定父类构造函数,则调用无参数的构造函数,如果没有无参构造函数,则会报错,如果要调用指定的构造函数,需要显示调用:super(参数...);

  在C#中,调用指定构造函数,是在子类构造函数后面直接显示调用父类构造函数 ClassA(参数a,参数b...):ClassB(a,b...)。

7.final关键字

  在java中,有final关键字,如果修饰class,则这个class不能被继承。如果方法被final修饰,则这个方法不能被子类重写;

  在C#中,没有final关键字。

8.重写父类方法

  在java中,子类重写父类的抽象方法,不需要关键字,直接定义和父类相同签名的函数即可;

  在C#中,子类重写父类的方法,需要override关键字。

9.判断某对象的类型

  在java中,判断一个对象是否是某种类型,用instanceof关键字,如  objA instanceof classA;

  在C#中,是通过is关键字,objA is classA。

10.异常捕获

  在java中,try可以单独和finally;

  在C#中,try必须和catch,不能单独和finally。

Java与C#的语法区别(不断更新中...)的更多相关文章

  1. java与C#的基础语法区别--持续更新

    1.判断字符串是否相等 java : equals()比较的是对象的内容(区分字母的大小写格式),但是如果使用“==”比较两个对象时,比较的是两个对象的内存地址,所以不相等.即使它们内容相等,但是不同 ...

  2. C、C++、Java、go的语法区别

    详细C++.Java比较:http://www.cnblogs.com/stephen-liu74/archive/2011/07/27/2118660.html 一.C.C++的区别 在很大程度上, ...

  3. Java与C#的语法区别

    1.作用域 在java中 { { int a=1; } int a=2;//以上a作用域外的以下,再声明同名的变量,是允许的: } 在C#中,以上是不允许的[只要在同一个作用域内,以上或以下的代码中 ...

  4. JAVA常见面试题问题简述(持续更新中)

    JAVA常见面试题问题简述 1. springcloud和dubbo的区别 ①相比之下springcloud 的社区会更加活跃,解决问题的速度也会越来越快,dubbo相对来说如果碰到没有解决的问题,就 ...

  5. java 学习必备的软件,持续更新中

    小编会持续更新在学习Java过程中需要的软件以及各种文件: 话不多说,看行动! 一:JDK (1)JDK1.8(*64): 链接:https://pan.baidu.com/s/1vM0jNXn2CT ...

  6. java需要掌握内容、核心不断更新中

    1.你需要精通面向对象分析与设计(OOA/OOD).涉及模式(GOF,J2EEDP)以及综合模式.你应该十分了解UML,尤其是class,object,interaction以及statediagra ...

  7. C++与Java的语法区别

    C++与Java的语法区别 首先,两个大的不同是主函数和怎样编译的不同,接下来是许多小的区别. main 函数C++//自由浮动的函数int main( int argc, char* argv[]) ...

  8. java视频教程 Java自学视频整理(持续更新中...)

    视频教程,马士兵java视频教程,java视频 1.Java基础视频 <张孝祥JAVA视频教程>完整版[RMVB](东西网) 历经5年锤炼(史上最适合初学者入门的Java基础视频)(传智播 ...

  9. 《深入理解Java虚拟机:JVM高级属性与最佳实践》读书笔记(更新中)

    第一章:走进Java 概述 Java技术体系 Java发展史 Java虚拟机发展史 1996年 JDK1.0,出现Sun Classic VM HotSpot VM, 它是 Sun JDK 和 Ope ...

随机推荐

  1. BZOJ 1644: [Usaco2007 Oct]Obstacle Course 障碍训练课

    题目 1644: [Usaco2007 Oct]Obstacle Course 障碍训练课 Time Limit: 5 Sec  Memory Limit: 64 MB Description 考虑一 ...

  2. django在视图中使用模板

    在视图中使用模板   在学习了模板系统的基础之后,现在让我们使用相关知识来创建视图. 重新打开我们在前一章在 mysite.views 中创建的 current_datetime 视图. 以下是其内容 ...

  3. ZigBee研究之旅(二)

    在学习ZigBee设备CC2530模块时,编程后程序无法运行,但又十分确定程序的真确性的情况下,看看是不是project栏下的option选项配置的有问题,我是经常在这里出问题,一开始找不到原因,特此 ...

  4. CentOS中使用shell的命令补全

    习惯debian的用户都知道shell中的自动补全功能非常实用,其中在CentOS中也可以有同样的功能. 只需要安装 bash-completion 包即可. rpm -ivh http://www. ...

  5. 【数据库摘要】5_Sql_IN

    IN 操作符 IN 操作符同意您在 WHERE 子句中查找多个值. SQL IN 语法 SELECT column_name(s) FROM table_name WHERE column_name ...

  6. BZOJ 3713: [PA2014]Iloczyn( 枚举 )

    斐波那契数列<10^9的数很少很少...所以直接暴力枚举就行了... ------------------------------------------------------------- ...

  7. 安装 unixbench 报错解决方法

    一.准备工作 1.首先使用root用户登陆. 2.运行Unixbeanch需要GCC的支持,在安装Unixbeanch之前,需要先安装GCC,在Debian中,直接执行如下命令: 复制代码 代码如下: ...

  8. ZOJ 3490 String Successor 字符串处理

    一道模拟题,来模拟进位 暴力的从右往左扫描,按规则求后继就好了.除了Sample已给出的,还有一些需要注意的地方: 9的后继是10,而不是00: (z)的后继是(aa),而不是a(a): 输入虽然最长 ...

  9. 135实例——add_4

    自我检讨,基础太差了.找了一本135个实例的pdf文档,一个个往后面编吧,希望能巩固一下基础 //date : 2013/8/19 //designer :pengxiaoen //function ...

  10. CString 操作指南

    过阅读本文你可以学习如何有效地使用 CString. CString 是一种很有用的数据类型.它们很大程度上简化了MFC中的许多操作,使得MFC在做字符串操作的时候方便了很多.不管怎样,使用CStri ...