# Concrete Class

*noun*

say it: **“KON-kreet klas”** **/ˈkɒŋkriːt klæs/**

A complete class you can create objects from, with a body for every method.

## What is **Concrete Class**?

**Concrete Class** — A complete class you can create objects from with `new`. Every method has a body, including the ones it inherits as abstract and has to fill in. An abstract class is the opposite: a partial design you can only inherit from.

```csharp
abstract class Shape { public abstract double Area(); }
class Circle(double radius) : Shape          // concrete
{
    public override double Area() => Math.PI * radius * radius;
}
```

## In a sentence

- “Circle is a **concrete class**, so new Circle(2) works, but new Shape() doesn't.”

Level: Journeyman · [More OOP terms at this level](https://www.ask-codey.com/glossary?category=oop&level=3)

Updated: October 28, 2026

Source: https://www.ask-codey.com/glossary/concrete-class
