Advertisement
Demetra4

Ttren

Nov 11th, 2019
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.01 KB | None | 0 0
  1. class Tren{
  2.    Vagon[] v = new Vagon[3];
  3.    private int capacitate_colete;
  4.    
  5.     public Tren(Vagon[] vagoane){
  6.         v = vagoane;
  7.     }
  8.     public int getNrColete(){
  9.         int s = 0, i;
  10.         for (i = 0; i < v.length; i++)
  11.         s += v[i].getNrColet();
  12.         return s;
  13.     }
  14.      public boolean equals(Object o) {
  15.         if(o instanceof Tren)
  16.             return (((Tren)o).getNrColete() == this.getNrColete());
  17.         else
  18.             return false;
  19.     }
  20.     public String toString(){
  21.         String s="";
  22.         int i;
  23.         for(i = 0; i < v.length; i++)
  24.             s+=v[i].toString() + " ";
  25.         return s;
  26.     }
  27. }
  28.  
  29. class Vagon{
  30.     private int capacitate_colete;
  31.     public Vagon(int colet)
  32.     {
  33.         capacitate_colete = colet;
  34.     }
  35.     public int getNrColet(){
  36.         return this.capacitate_colete;
  37.     }
  38. }
  39.  
  40. class Calatori extends Vagon{
  41.     public int nr_pasageri;
  42.     public Calatori(int colet, int pasageri){
  43.         super(colet);
  44.         nr_pasageri = pasageri;
  45.     }
  46.    
  47.  
  48.     public void deschideUsa(){
  49.     System.out.println("Atentie!, usile de deschid.");
  50.    
  51.     }
  52.     public void inchideUsa(){
  53.     System.out.println("Atentie!, usile de inchid.");
  54.     }
  55.     public int getNrPas(){
  56.         return this.nr_pasageri;
  57.     }
  58. }
  59. class CalatoriA extends Calatori{
  60.     private static final int NR_Pasageri = 40;
  61.     private static final int NR_Colete = 300;
  62.     public CalatoriA(){
  63.         super(NR_Pasageri, NR_Colete);
  64.     }
  65.     public String toString(){
  66.         return "CalatoriA 40(pasageri) 300(colete)";
  67.     }
  68. }
  69.  
  70. class CalatoriB extends Calatori{
  71.     private static final int NR_Pasageri = 50;
  72.     private static final int NR_Colete = 400;
  73.     public CalatoriB(){
  74.         super(NR_Pasageri, NR_Colete);
  75.     }
  76.     public void blocareGeam(){
  77.         System.out.println("Atentie!, geamurile sunt blocate.");
  78.     }
  79.     public String toString(){
  80.         return "CalatoriB 40(pasageri) 300(colete)";
  81.     }
  82. }
  83.  
  84. class Marfa extends Vagon{
  85.     private static final int NR_Colete = 400;
  86.     public Marfa(){
  87.     super(NR_Colete);
  88.     }
  89.      public String toString(){
  90.         return "Marfa 400(colete)";
  91.     }
  92. }
  93.  
  94. class Main{
  95.     public static void main(String[] args){
  96.     Vagon[] tren_1 = new Vagon[3];
  97.         tren_1[0] = new Marfa();
  98.         tren_1[1] = new CalatoriA();
  99.         tren_1[2] = new CalatoriB();
  100.       Tren t_1 = new Tren(tren_1);
  101.     Vagon[] tren_2 = new Vagon[3];
  102.         tren_2[0] = new CalatoriA();
  103.         tren_2[1] = new CalatoriB();
  104.         tren_2[2] = new CalatoriB();
  105.       Tren t_2 = new Tren(tren_2);
  106.       System.out.println("in trenul 2: ");
  107.       ((CalatoriB)tren_2[2]).blocareGeam();
  108.       System.out.println("in trenul 1: ");
  109.       ((CalatoriA)tren_1[1]).deschideUsa();
  110.       ((CalatoriA)tren_1[1]).inchideUsa();
  111.         System.out.println("Tren_1");
  112.         System.out.println(t_1);
  113.         System.out.println("Tren_2");
  114.         System.out.println(t_2);
  115.         System.out.println(t_2.equals(t_1));
  116.     }
  117. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement