Skip to content

Desi banjara

  • AWS DevOps Engineer Professional Exam Practice Questions – 4 AWS DevOps Engineer Professional Exam
  • Microsoft AI-900 Certification Exam Practice Questions Microsoft AI-900 Certification Exam
  • “Prosperity makes friends, adversity tries them.”– Publilius Syrus Motivational & Inspirational Quotes
  • AWS DevOps Engineer Professional Exam Practice Questions – 7 AWS DevOps Engineer Professional Exam
  • Let’s forget your age and celebrate like you turned 18. Happy birthday buddy! Birthday Wishes
  • Microsoft AZ-900 Certification Exam Practice Questions – 3 Microsoft AZ-900 Certification Exam
  • Nature Quotes – We need the tonic of wildness Nature Quotes
  • “A mind that is stretched by a new experience can never go back to its old dimensions.” – Oliver Wendell Holmes Quotes

Differences between struct and classes in C# : Interview question

No Comments on Differences between struct and classes in C# : Interview question

Differences between struct and classes are:

Struct Class
Struct are value types; A variable of a structure type contains the structure’s data. Classes are reference types. A variable of a class type contains a reference to the data as a class type does.
Struct use stack allocation. Classes use heap allocation.
All struct elements are Public by default. A class variables and constants are Private by default, while other class members are Public by default.
A struct must have at least one nonshared variable or nonshared, noncustom event element. A class can be completely empty.
Struct elements cannot be declared as Protected. A class members can declare as element as Protected.
Struct variable declarations cannot specify initializers or initial sizes for arrays; class variable declarations can specify initializers or initial sizes for arrays;
Struct implicitly inherit from the System.ValueType class and cannot inherit from any other type. Classes can inherit from any class or classes other than System.ValueType
Struct are not inheritable classes are inheritable
Struct are never terminated, so the common language runtime (CLR) never calls the Finalize method on any structure classes are terminated by the garbage collector (GC), which calls Finalize on a class when it detects there are no active references remaining
A struct does not require a constructor a class does need a constructor
Struct can have nonshared constructors only if they take parameters. Classes can have them with or without parameters.
A struct procedure can handle events only if it is a static method, and only by means of the AddHandler Statement Any class procedure can handle events, using either the Handles keyword or the AddHandler statement.

Every struct has an implicit public constructor without parameters. This constructor initializes all the struct’s data elements to their default values. You cannot redefine this behaviour
Instances and Variables: Because structs are value types, each struct variable is permanently bound to an individual struct instance. But classes are reference types, and an object variable can refer to various class instances at different times.

This distinction affects your usage of struct and classes in the following ways:

  • Initialization

A struct variable implicitly includes an initialization of the elements using the struct’s parameterless constructor. Therefore,

struct s ; is equivalent to struct s1 = new struct() ;

  • Assigning Variables.

When you assign one struct variable to another, or pass a structure instance to a procedure argument, the current values of all the variable elements are copied to the new structure. When you assign one object variable to another, or pass an object variable to a procedure, only the reference pointer is copied.

  • Assigning Null.

You can assign the value “null” to a struct variable, but the instance continues to be associated with the variable. You can still call its methods and access its data elements, although variable elements are reinitialized by the assignment.

In contrast, if you set an object variable to “null “, you dissociate it from any class instance, and you cannot access any members through the variable until you assign another instance to it.

  • Multiple Instances.

An object variable can have different class instances assigned to it at different times, and several object variables can refer to the same class instance at the same time. Changes you make to the values of class members affect those members when accessed through another variable pointing to the same instance.

Struct elements, however, are isolated within their own instance. Changes to their values are not reflected in any other structure variables, even in other instances of the same Struct declaration.

  • Equality

Equality testing of two struct must be performed with an element-by-element test.

Two object variables can be compared using the Equals method. Equals indicates whether the two variables point to the same instance.

 

C# development, Interview questions, IT/Software development Tags:C#, C# development, Interview questions, struct, Structure

Post navigation

Previous Post: C# interview Questions – What is struct in C#?
Next Post: SOLID Design Principles

Related Posts

  • Interview question: Can we assign null value into value type variable? C# development
  • Interview question: What is the use of “using” keyword in C#? C# development
  • ASP.Net MVC Interview Questions ASP.Net MVC
  • How to enable cors in WebApi to handle request from different subdomains? ASP.NET Web API
  • Interview question: How to sort an array in C#? C# development
  • Interview question: What is the difference between GetType() and typeof()? C# development

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *



Archives

  • June 2021
  • March 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • July 2020
  • June 2020
  • April 2020
  • December 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • January 2018
  • September 2017
  • August 2017
  • July 2017
  • June 2017
  • May 2017
  • April 2017
  • August 2015
  • May 2015
  • April 2014
  • November 2013

Categories

  • Acer
  • Amazon AWS Certification Exam
  • Amazon Kindle
  • Android phones
  • ASP.Net MVC
  • ASP.NET Web API
  • AWS DevOps Engineer Professional Exam
  • AZ-300: Microsoft Azure Architect Technologies Exam
  • Best Wishes Messages
  • birthday messages for boyfriend
  • Birthday messages For Girlfriend
  • Birthday Wishes
  • Birthday Wishes For Mom
  • Business
  • C# development
  • Cameras
  • Canon
  • Cloud
  • Cloud services
  • digital-cameras
  • Diwali
  • Entrepreneurship
  • eReaders
  • Family Quotes
  • Family Quotes
  • Friendship Quotes
  • Gadgets
  • Games
  • Get Well Soon Messages
  • GIT
  • Good Morning Wishes
  • Google
  • Gratitude Quote
  • Guru Nanak Jayanti
  • Halloween
  • Happiness Quote
  • Happy Diwali Wishes
  • Happy Independence Day Wishes
  • Happy New Year Wishes
  • HTC
  • HTC One
  • HTML
  • I Miss You Messages
  • Inspirational Quotes
  • Inspirational Travel Quotes
  • Interview questions
  • IT/Software development
  • Leadership Quote
  • Life lessons
  • Love Quotes
  • Love shayari
  • Messages
  • Microsoft AI-900 Certification Exam
  • Microsoft AZ-104 Certification Exam
  • Microsoft AZ-204 Certification Exam
  • Microsoft AZ-900 Certification Exam
  • Microsoft Azure
  • Microsoft Azure certifications
  • Microsoft Exam AZ-220
  • Microsoft Excel
  • Microsoft Office
  • Microsoft word
  • Mobile phones
  • Motivational & Inspirational Quotes
  • Nature Quotes
  • Nexus
  • Nikon
  • Pixels
  • PL-200: Microsoft Power Platform Functional Consultant Certification
  • PL-900: Microsoft Power Platform Fundamentals
  • postman
  • Quotes
  • Robin Sharma
  • Samsung Galaxy S5
  • Self improvement quotes
  • Self-Confidence Quote
  • SonarQube
  • Sony PlayStation 4
  • SQL
  • SQL Server
  • Success Quotes
  • Travel Quotes
  • Uncategorised
  • Uplifting Quotes
  • WCF (Windows Communication Foundation)
  • Web development
  • Wishes
  • Wishes for Newborn Baby

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org



Recent Posts

  • PL-200: Microsoft Power Platform Functional Consultant Certification – Exam Practice Questions
  • SonarQube – Static code analysis
  • Microsoft PL-900 Certification Exam Practice Questions – 2
  • Microsoft AZ-204 Certification Exam Practice Questions – 1
  • AWS DevOps Engineer Professional Exam Practice Questions – 14

Recent Comments

  • Yosianus on Error while sending json model in POST request to web API service using postman
  • “The difference between stumbling blocks and stepping stones is how you use them.”– Unknown Motivational & Inspirational Quotes
  • Sample Exam Questions 6: AZ-300: Microsoft Azure Architect Technologies AZ-300: Microsoft Azure Architect Technologies Exam
  • “Always remember you are braver than you believe, stronger than you seem, and smarter than you think.” Christopher Robin Motivational & Inspirational Quotes
  • Birthdays are moments to celebrate the year that has gone by and look towards the one ahead with hope and enthusiasm. Wishing you a very happy birthday. Birthday Wishes
  • The best son in the world wishes the best mother in the world the best wishes for her birthday. Happy birthday ma. Birthday Wishes For Mom
  • How to fall in love? Gratitude Quote
  • May your birthday be filled with lots of lovely moments. May you continue to climb the ladder of success. Wishing you a wonderful birthday. Birthday Wishes
  • Microsoft AI-900 Certification Exam Practice Questions -4 Microsoft AI-900 Certification Exam

Copyright © 2022 Desi banjara.

Powered by PressBook News WordPress theme