Difference between Class and Structure
|
Structure |
Class |
| Structure is a collection of different types of data type | Class is a group of common objects that share common properties and relationships. |
| By default, structure member is public | By default, class member is private |
| Structure is value type so they are stored on stack | Class is reference type so they are stored on heap |
| It cannot be inherited | It can be inherited |
| Structure should be used when you want to use a small data structure | Class is better choice for complex data structure |
| Structure elements cannot be declared as protected | Class elements can be declared as protected |
| GC does not call finalize method for them because structure are not terminated | GC does call finalize method for them because class are terminated |
| Structure does not require constructor | Class does require constructor |
| The member variable of structure cannot be initialized directly | The member variable of class can be initialized directly |
| It can only have parameterized constructor | It can have all types of constructor and destructor |