//Assignment 4
class Chocolate1 {
String brand;
Chocolate1(String brand) {
this.brand = brand;
}
void displayBrand() {
System.out.println("Brand: " + brand);
}
}
class DairyMilk extends Chocolate1 {
DairyMilk() {
super("Cadbury");
}
void displayType() {
System.out.println("Type: Dairy Milk");
}
}
class DarkChocolate extends DairyMilk {
DarkChocolate() {
super();
}
void displayCategory() {
System.out.println("Category: Dark Chocolate");
}
void displayFeatures() {
System.out.println("Features: Rich cocoa content, less sugar");
}
}
class NutsNFruits extends DairyMilk {
NutsNFruits() {
super();
}
void displayCategory() {
System.out.println("Category: Nuts and Fruits Chocolate");
}
void displayFeatures() {
System.out.println("Features: Contains nuts and dried fruits for a crunchy
and sweet taste");
}
}
class Silk extends DairyMilk {
Silk() {
super();
}
void displayCategory() {
System.out.println("Category: Silk Chocolate");
}
void displayFeatures() {
System.out.println("Features: Smooth and velvety texture");
}
}
class Crackle extends DairyMilk {
Crackle() {
super();
}
void displayCategory() {
System.out.println("Category: Crackle Chocolate");
}
void displayFeatures() {
System.out.println("Features: Crispy rice or rice puffs for a crunchy
experience");
}
}
class DairyMilkOreo extends DairyMilk {
DairyMilkOreo() {
super();
}
void displayCategory() {
System.out.println("Category: Dairy Milk Oreo");
}
void displayFeatures() {
System.out.println("Features: Combination of Dairy Milk chocolate with
Oreo cookie pieces");
}
}
class DairyMilkHazelnut extends DairyMilk {
DairyMilkHazelnut() {
super();
}
void displayCategory() {
System.out.println("Category: Dairy Milk Hazelnut");
}
void displayFeatures() {
System.out.println("Features: Rich flavor of hazelnuts combined with Dairy
Milk chocolate");
}
}
class DairyMilkSilkBubbly extends DairyMilk {
DairyMilkSilkBubbly() {
super();
}
void displayCategory() {
System.out.println("Category: Dairy Milk Silk Bubbly");
}
void displayFeatures() {
System.out.println("Features: Unique bubbly texture for a delightful
chocolate experience");
}
}
class DairyMilkSilkOreoRedVelvet extends DairyMilkOreo {
DairyMilkSilkOreoRedVelvet() {
super();
}
void displayCategory() {
System.out.println("Category: Dairy Milk Silk Oreo Red Velvet");
}
void displayFeatures() {
System.out.println("Features: Limited-edition variant combining Silk,
Oreo, and Red Velvet flavors");
}
}
public class Main {
public static void main(String[] args) {
DarkChocolate darkChocolate = new DarkChocolate();
NutsNFruits nutsNFruits = new NutsNFruits();
Silk silkChocolate = new Silk();
Crackle crackleChocolate = new Crackle();
DairyMilkOreo dairyMilkOreo = new DairyMilkOreo();
DairyMilkHazelnut dairyMilkHazelnut = new DairyMilkHazelnut();
DairyMilkSilkBubbly dairyMilkSilkBubbly = new DairyMilkSilkBubbly();
DairyMilkSilkOreoRedVelvet silkOreoRedVelvet = new
DairyMilkSilkOreoRedVelvet();
System.out.println("DARK CHOCOLATE DETAILS:");
darkChocolate.displayBrand();
darkChocolate.displayType();
darkChocolate.displayCategory();
darkChocolate.displayFeatures();
System.out.println("\nNUTS N FRUITS CHOCOLATE DETAILS:");
nutsNFruits.displayBrand();
nutsNFruits.displayType();
nutsNFruits.displayCategory();
nutsNFruits.displayFeatures();
System.out.println("\nSILK CHOCOLATE DETAILS:");
silkChocolate.displayBrand();
silkChocolate.displayType();
silkChocolate.displayCategory();
silkChocolate.displayFeatures();
System.out.println("\nCRACKLE CHOCOLATE DETAILS:");
crackleChocolate.displayBrand();
crackleChocolate.displayType();
crackleChocolate.displayCategory();
crackleChocolate.displayFeatures();
System.out.println("\nDAIRY MILK OREO DETAILS:");
dairyMilkOreo.displayBrand();
dairyMilkOreo.displayType();
dairyMilkOreo.displayCategory();
dairyMilkOreo.displayFeatures();
System.out.println("\nDAIRY MILK HAZELNUT DETAILS:");
dairyMilkHazelnut.displayBrand();
dairyMilkHazelnut.displayType();
dairyMilkHazelnut.displayCategory();
dairyMilkHazelnut.displayFeatures();
System.out.println("\nDAIRY MILK SILK BUBBLY DETAILS:");
dairyMilkSilkBubbly.displayBrand();
dairyMilkSilkBubbly.displayType();
dairyMilkSilkBubbly.displayCategory();
dairyMilkSilkBubbly.displayFeatures();
System.out.println("\nDAIRY MILK SILK OREO RED VELVET DETAILS:");
silkOreoRedVelvet.displayBrand();
silkOreoRedVelvet.displayType();
silkOreoRedVelvet.displayCategory();
silkOreoRedVelvet.displayFeatures();
}
}