There is such a class.

public class Passenger { Passenger(String name, String lastName, int year, String comfortLevel, double carryOn, double baggage, Boolean weapon, Boolean premiumCard){ name = name; // имя пассаТира lastName = lastName; // фамилия year = year;// ΠΏΠΎΠ»Π½Ρ‹Ρ… Π»Π΅Ρ‚ comfortLevel = comfortLevel;//класс Π±ΠΈΠ»Π΅Ρ‚Π° carryOn = carryOn;//вСс Ρ€ΡƒΡ‡Π½ΠΎΠΉ ΠΊΠ»Π°Π΄ΠΈ baggage = baggage;//вСс Π±Π°Π³Π°ΠΆΠ° weapon = weapon;// Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ оруТия premiumCard = premiumCard;// Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ дисконтной ΠΊΠ°Ρ€Ρ‚Ρ‹ } } 

Next SellTicket class

 public class SellTicket { private double[] econom = {8.0, 4.0};// ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ класса вСс Π±Π°Π³Π°ΠΆΠ°, Ρ€ΡƒΡ‡Π½ΠΎΠΉ ΠΊΠ»Π°Π΄ΠΈ private double[] business = {12.0, 8.0}; private double[] comfort = {10.0, 6.0}; private int adult = 18;// возраст private int young = 16; private int baby = 5; void schekPass(Passenger p) {// провСряСм Π² Ρ‡Π΅Ρ€Π½ΠΎΠΌ спискС AviaSafe a = new AviaSafe(); a.checkPassenger(p); } void sheckYear(Passenger p){// смотрим возраст if(p.year >= adult){ } if(p.year >= young){ } if(p.year >= baby){ } } void checkComfort(Passenger p) {// if(p.comfortLevel == "comfort"){ } if(p.comfortLevel == "business"){ } if(p.comfortLevel == "econom"){ } } void sheckWeapon(Passenger p){// Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ оруТия AviaSafe a = new AviaSafe(); a.checkWeapon(p); } void checkDiscountCard(Passenger p){ if(p.premiumCard){ //насчитываСм Π°Π²ΠΈΠ°ΠΌΠΈΠ»ΠΈ ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΠ΅ плюшки } } } 

I do not want to create a bunch of setters, getters. How to get access to the parameters of the designer?

  • one
    See the Builder pattern - Pavel Parshin
  • one
    name = name; - what does it do? - Igor
  • sorry forgot this. as3.0 makes itself felt - Alex Lexis

2 answers 2

If you do not want to write the boilerplate code , then use the lombok library

With it, it will be enough to add only one annotation @Data .

    until came up with this option.

     public class Passenger { private String name; private String lastName; private int year; private String comfortLevel; private double carryOn; private double baggage; private Boolean weapon; private Boolean premiumCard; Passenger(String name,String lastName, int year, String comfortLevel, double carryOn, double baggage, Boolean weapon, Boolean premiumCard) { setName(name); setLastName(lastName); setYear(year); setComfortLevel(comfortLevel); setCarryOn(carryOn); setBaggage(baggage); setWeapon(weapon); setPremiumCard(premiumCard); } private void setName(String name){ this.name = name; } public String getName(){ return name; } private void setLastName(String name){ this.lastName = lastName; } public String getLastName(){ return lastName; } private void setYear(int year){ this.year = year; } public int getYear(){ return year; } private void setComfortLevel(String comfortLevel){ this.comfortLevel = comfortLevel; } public String getComfortLevel(){ return comfortLevel; } private void setCarryOn(double carryOn){ this.carryOn = carryOn; } public double getCarryOn(){ return carryOn; } private void setBaggage(double baggage){ this.baggage = baggage; } public double getBaggage(){ return baggage; } private void setWeapon(Boolean weapon){ this.weapon = weapon; } public Boolean getWeapon(){ return weapon; } private void setPremiumCard(Boolean premiumCard){ this.premiumCard = premiumCard; } public Boolean getPremiumCard(){ return premiumCard; } 

    }

    • Or you do private fields and you do getters, setters. Or you make public fields and communicate to them like this <object>. <FildName>. - Mikhail Ketov
    • The question is whether the second option is safe? - Alex Lexis