Trusted answers to developer questions
Trusted Answers to Developer Questions

Related Tags

scala

What are Generic Classes in Scala?

Dian Us Suqlain

Generic Classes are classes that take a type – just like a parameter – inside the square brackets[].

This type of class is useful for collection classes.

Naming convensions

Generic classes in Scala have particular naming conventions when implementing a class.

  • Letter A is written inside [] as a type parameter
  • Symbol used to denote a key is A and for a value, it is B
  • Symbol used to denote a numeric value is N

Syntax

class MyList[A] {
    // Some methods or objects.
}

Code

Let’s look at the implementation of Generic Classes through the following example:

object GenericClass {

	def main(args: Array[String]) : Unit = {

		abstract class Addition[A] {
			def addition(b: A, c: A): A
		}
		
		class intAddition extends Addition[Int] {
			def addition(b: Int, c: Int): Int = b + c
		}

		class doubleAddition extends Addition[Double] {
      
			def addition(b : Double, c : Double) : Double = b + c
		}

		val add1 = new intAddition().addition(69, 5)
		val add2 = new doubleAddition().addition(30.0, 8.0)

		println(add1)
		println(add2)
	
	}
}
Scala Generic Class

Explanation

The above code snippet implements a Generic Class, demonstrating how we can use the same function (i.e., addition()) in multiple classes to add distinct data types and display their respective results.

RELATED TAGS

scala

CONTRIBUTOR

Dian Us Suqlain
Copyright ©2022 Educative, Inc. All rights reserved
RELATED COURSES

View all Courses

Keep Exploring