zoukankan      html  css  js  c++  java
  • C#与Java的几点区别

    1.Substring.

    在Java中,String类有个substring方法。在C#中,string类有个Substring方法。

    他们的功能也不一样。
    Java中:
    String s="ABCDEFG";
    那么。s.substring(1,2)的值为"B",因为参数的意思是两个位置

    C#中:
    string s="ABCDEFG";
    那么。s.Substring(1,2)的值为"BC",因为第一个参数是位置,第二个是取字符的个数

    2.析构函数
    Java不支持析构函数。而虽然C#支持析构函数,一般也不推荐使用,因为它和C++的析构函数并不一样。取而代之。一般使用 System.IDisposable接口的void Dispose()方法。

    3.分类。(包,名称空间)

    Java中叫package,C#中叫namespace

    4.父类引用

    Java中叫Super,C#中叫base

    5.继承

    Java中用“extends,C#中就用一个冒号“:

    6.默认访问修饰符

    Java是friendly
    C#是private

    所以,C#中的类和构造函数一般都要加上public


    7.构造函数

    Java:


    class Father
    {
        
    int n;
        Father(
    int n)
        
    {
            
    this.n=n;
        }

    }

    class Child
    {
        Child()
        
    {
            
    this(200);
        }

        Child(
    int n)
        
    {
            
    super(n);
        }

    }


    C#:


    public class Father
    {
        
    private int n;
        
    public Father(int n)
        
    {
            
    this.n=n;
        }

    }

    public class Child
    {
        
    public Child() : this(200)
        
    {        
        }

        
    public Child(int n) : base(n);
        
    {
        }

    }


    8.C#支持属性方法。

    如:


    public class People
    {
        
    private int _age;
        
    public int Age
        
    {
            
    set this._age=value; }
            
    get return this._age; }
        }

    }


    而java要这样写:


    class People
    {
        
    int _age;
        
    public int getAge() return this._age; }
        
    public void setAge(int age) this._age=age;}
    }

    9.访问修饰符

    C#中有了解决方案,项目这样的概念。Java中没有。自然访问修饰符也不一样。

    C#:

    public        --不限制访问
    internal      -- 同程序集(项目,装配件)可见
    protected  --派生类可见
    private    --本类可见


    Java:

    public
    --不限制访问
    protected --派生类可见
    friendly --本包可见
    private --本类可见


  • 相关阅读:
    【Canvas】(1)---概述+简单示例
    【jQuery】(8)---jquery Ajax
    lastlogon
    windows server core 2016 IIS远程管理的那些坑
    开机手机显示存储空间不足某些系统功能可能无法正常使用,而且无法取消这个界面,导致手机停在这个界面无法操作。
    javascript prototype理解
    微信小程序诡异错误this.setData报错
    转:goproxy和go modules的初步使用
    真机调试No target device的解决(android studio)3.4.1
    unable to access android sdk add-on list的解决
  • 原文地址:https://www.cnblogs.com/zxsoft/p/866040.html
Copyright © 2011-2022 走看看