Home  >  Article  >  Backend Development  >  A brief introduction to the type system (value types and reference types) in C#

A brief introduction to the type system (value types and reference types) in C#

黄舟
黄舟Original
2017-03-22 11:40:261709browse

This article mainly introduces a brief analysis of the type system in C# (value types and reference types). Friends in need can refer to

Today’s The things written are all conceptual things in the book. Just copy the notes and write them out in the form of questions and dialogues. Maybe you can have something to talk about in future interviews~~~

 Q1. What are the three characteristics of the C#1 system type?

 A1.C#1 type system is static, explicit, and safe.

 Q2. Why is it called static type?

A2. Static type is used to describe the type of expression at compile time. When declaring a variable of one type, the variable cannot point to objects of other types.

 Q3. What is the difference between explicit types and implicit types?

 A3. Explicit types and implicit types are meaningful only in statically typed languages. Explicit typing requires an explicit declaration of the type of a variable, while implicit typing offloads the responsibility for type determination to the compiler, but the type of the variable is known at compile time.

Q4. Value types and reference types, respectively, which of the above types do classes, structures, array types, enumerations, delegate types and interface types belong to?

 A4. Classes are reference types, structures are value types, array types are reference types, enumerations are value types, delegates are reference types, and interfaces are reference types.

 Q5. Judge whether the following statements are true or false.

 1. Structure is a lightweight class.

 2. Reference types are stored on the heap, and value types are stored on the stack.

 3. Objects are passed by reference by default in C#.

 A5. The three statements above are all wrong.

 Q6.If you want to use dynamic types in C#4, what keywords should you use?

 A6.dynamic, such as dynamic o = "kkk", the responsibility for this type judgment is passed on to the runtime.

The above is the detailed content of A brief introduction to the type system (value types and reference types) in C#. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn