Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Class declaration syntax
📖 Scenario: You are creating a simple program to represent a book in a library system.
🎯 Goal: Build a class called Book with basic properties to hold book information.
📋 What You'll Learn
Create a class named Book
Add a public string property called Title
Add a public string property called Author
Add a public int property called Year
Create an instance of Book with specific values
Print the book details using the instance
💡 Why This Matters
🌍 Real World
Classes are used to model real-world objects in software, like books in a library system.
💼 Career
Understanding class declaration is fundamental for any C# developer to organize and structure code effectively.
Progress0 / 4 steps
1
Create the Book class
Write a class declaration named Book with no properties or methods yet.
C Sharp (C#)
Hint
Use the class keyword followed by the class name Book.
2
Add properties to the Book class
Inside the Book class, add three public properties: string Title, string Author, and int Year.
C Sharp (C#)
Hint
Use auto-implemented properties with get; set;.
3
Create an instance of Book
Create a variable named myBook of type Book and set its Title to "The Great Gatsby", Author to "F. Scott Fitzgerald", and Year to 1925.
C Sharp (C#)
Hint
Use object initializer syntax to set properties when creating myBook.
4
Print the book details
Write a Console.WriteLine statement to print the book details in the format: "Title: The Great Gatsby, Author: F. Scott Fitzgerald, Year: 1925" using the myBook instance.
C Sharp (C#)
Hint
Use string interpolation with $"..." to include property values in the output.
Practice
(1/5)
1. What is the correct way to declare a class named Car in C#?
easy
A. Car class { }
B. class Car { }
C. class = Car { }
D. class: Car { }
Solution
Step 1: Understand class declaration syntax
In C#, a class is declared using the keyword class followed by the class name and curly braces.
Step 2: Match the correct syntax
class Car { } uses class Car { }, which is the correct syntax for declaring a class named Car.
Final Answer:
class Car { } -> Option B
Quick Check:
Class declaration = class ClassName { } [OK]
Hint: Remember: class keyword + name + braces [OK]
Common Mistakes:
Putting class name before keyword
Using = or : instead of space
Missing curly braces
2. Which of the following is a syntax error when declaring a class in C#?
easy
A. public class Person { }
B. class Animal { }
C. class 123Car { }
D. internal class House { }
Solution
Step 1: Check class name rules
Class names must start with a letter or underscore, not a number.
Step 2: Identify invalid class name
class 123Car { } uses class 123Car { }, which starts with digits, causing a syntax error.
Final Answer:
class 123Car { } -> Option C
Quick Check:
Class names cannot start with numbers [OK]
Hint: Class names must start with letter or underscore [OK]
Common Mistakes:
Starting class name with a digit
Using spaces in class name
Using reserved keywords as class names
3. What will be the output of the following code?
class Dog {
public string Name = "Buddy";
}
class Program {
static void Main() {
Dog d = new Dog();
System.Console.WriteLine(d.Name);
}
}
medium
A. Buddy
B. Name
C. Dog
D. Compilation error
Solution
Step 1: Understand class field initialization
The class Dog has a public field Name initialized to "Buddy".
Step 2: Trace the program output
In Main, a Dog object is created and d.Name is printed, so output is "Buddy".
Final Answer:
Buddy -> Option A
Quick Check:
Field value printed = Buddy [OK]
Hint: Prints field value assigned in class [OK]
Common Mistakes:
Confusing class name with field value
Expecting method output instead of field
Assuming compilation error without reason
4. Identify the error in this class declaration:
class Book
{
string title;
void SetTitle(string t)
{
title = t;
}
}
medium
A. Missing access modifiers for field and method
B. Class name should be lowercase
C. Method SetTitle must return a value
D. Field title must be static
Solution
Step 1: Check access modifiers in class members
By default, class members are private, but it's good practice to specify access modifiers explicitly.
Step 2: Identify missing access modifiers
Field title and method SetTitle lack access modifiers like private or public, which can cause confusion or errors in some contexts.
Final Answer:
Missing access modifiers for field and method -> Option A
Quick Check:
Always specify access modifiers [OK]
Hint: Always add public/private to fields and methods [OK]
Common Mistakes:
Assuming lowercase class names are required
Thinking void methods must return a value
Believing fields must be static
5. You want to create a class Student with a field name and a method GetName that returns the student's name. Which is the correct complete class declaration?
hard
A. class Student { public string name; public void GetName() { return name; } }
B. class Student { string name; string GetName() { name; } }
C. class Student { public string name; string GetName() { return name; } }
D. class Student { public string name; public string GetName() { return name; } }
Solution
Step 1: Check field and method access modifiers
The field name and method GetName should be public to be accessible outside the class.
Step 2: Verify method return type and body
GetName returns a string, so its return type must be string and it must return name.
Step 3: Identify correct option
class Student { public string name; public string GetName() { return name; } } correctly declares name as public string and GetName as public string method returning name.
Final Answer:
class Student { public string name; public string GetName() { return name; } } -> Option D
Quick Check:
Public field + public string method returning field [OK]
Hint: Method return type must match returned value type [OK]