[C#基础]5.预定义和引用类型

Posted on 2009-09-26 12:36  Relax Active  阅读(339)  评论(0)    收藏  举报
 

(1)       预定义类型

C#提供了与C/C++类似的一系列预定义类型,包括整型(包括符号数、无符号数)、浮点类型、布尔类型、字符类型和十进制类型。

整型有:sbyteshort intlong(符号数),byteushortuintulong(无符号数);

浮点数有:floatdouble

布尔类型有:truefalsec#对布尔的要求比c/c++严格,与java类似。在c#false不等于0true也不等于1falsetrue都是单独分离出来的一个值;

字符型有:char

十进制类型有:decimal

此外我们可以预定义自己的预定义类型:

using System;

struct Digit

{...}

class Test

{

static void TestInt() {

int a = 1;

int b = 2;

int c = a + b;

Console.WriteLine(c);

}

static void TestDigit() {

Digit a = (Digit) 1;

Digit b = (Digit) 2;

Digit c = a + b;

Console.WriteLine(c);

}

static void Main() {

TestInt();

TestDigit();

}

}

 

(2)       引用类型

C#包含两个预定义类型分别是:objectstring.

C#中,object类型就是最终的父类型,所有内置类型和用户定义的类型都从它派生而来;

● 可以使用object引用绑定任何子类型的对象。

● object类型执行许多一般用途的基本方法,包括Equals()GetHashCode()GetType()ToString()

 

Object类型a的引用调用示例:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace Demo5

{

    class ObjectClass

    {

        public int i = 60;

    }

 

    class Program

    {

        static void Main(string[] args)

        {

            object a; //声明一个object型的变量!

            a = "100";   //string型值赋给Object类型的变量! (装箱的例子)

 

            Console.WriteLine(a);

            Console.WriteLine(a.GetType());   //引用GetType方法!

            Console.WriteLine(a.ToString());   //引用ToString方法!

 

            a = new ObjectClass();

            ObjectClass b;

            b = (ObjectClass)a;   //对象b指向a! 装箱???

            Console.WriteLine(b.i); 

           

        }

    }

}

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3