Come chiamare una classe da un'altra classe in Java
Come classe Java, possiamo avere classi come parte di un'altra classe. cioè possiamo avere un tipo definito dall'utente all'interno di un altro tipo definito dall'utente. ad esempio, stanza con ventilatore e luci, auto con motore e pneumatici. Questo modo di includere classi all'interno di altre classi è anche chiamato composizione di classi o ha una relazione.
Non c'è limite al livello di composizione. Un appartamento contiene più appartamenti, un appartamento contiene più stanze, le stanze contengono ventilatori e luci e i ventilatori contengono motore, ali ecc.
Similmente ai tipi di dati primitivi, l'operatore dot(.) può anche essere usato per accedere alle variabili di tipi definiti dall'utente (tipi non primitivi).
The below program shows how classes can be another class
CODE
- class ClassComposition
- {
- public static void main(String arg[])
- {
- Room hall = new Room("Hall"); // LINE A
- hall.area = 200.0;
- hall.paintColor = "Voilet";
- hall.flooring = "Marble";
- hall.ceilingFan = new Fan("Bajaj"); // LINE B
- hall.ceilingFan.speed = 500; // LINE B1
- hall.ceilingFan.numberOfSpeeds = 5;
- hall.tube = new Light("Hall tube light"); // LINE C
- hall.tube.color = "White";
- hall.tube.watts = 40;
- hall.tube.tube = true; // LINE C1
- Light bl = new Light("green bed light"); // LINE D
- hall.bedLight = bl;
- hall.bedLight.color = "green";
- hall.bedLight.watts = 50;
- hall.bedLight.tube = false;
- System.out.println("Hall fan speed : " + hall.ceilingFan.speed);
- System.out.println("Bed Light color : " + hall.bedLight.color);
- }
- }
- class Fan
- {
- String name;
- double speed;
- String color;
- int numberOfSpeeds;
- Fan(String name)
- {
- this.name = name;
- }
- }
- class Light
- {
- String name;
- String color;
- int watts;
- boolean tube;
- Light(String name)
- {
- this.name = name;
- }
- }
- class Room
- {
- String name;
- double area;
- String paintColor;
- String flooring;
- Fan ceilingFan;
- Light tube;
- Light bedLight;
- Room(String name)
- {
- this.name = name;
- }
- }
OUTPUT
Hall fan speed : 500.0
Bed Light color : green
Articoli simili
- Come ottenere il valore di una variabile da una classe ad un'altra classe in Python
- Come chiamare il metodo Main Activity in un'altra classe in Android
- Qual è la differenza tra dichiarazione di classe e definizione di classe in Java?
- Qual è corretto, "Si prega di chiamare al più presto" o "Si prega di chiamare quando è conveniente"?