Контакты

Достижения

Все достижения (1)

Наибольший вклад в теги

Все теги (9)

Лучшие ответы пользователя

Все ответы (7)
  • If (value == null || value.equals(null)))?

    @lslayer
    Программист и сисадмин
    Для определенного объекта может быть переопределен метод equals().
    Например, по задачам бизнес-логики объект считается null если его "самоеГлавноеПоле" есть null.

    В данном же случе - либо старый неисправленный код (раньше параметром приходил не Object а что-то другое) либо банальная ошибка.

    А вообще, в случае с пользовательским классом второе условие без первого может сработать.
    Например:
    package tk.lslayer.temp;
    
    public class NullComparator {
        public Integer someField = null;
    
        @Override
        public boolean equals(Object obj) {
            if (obj == null && someField == null) return true;
            if (obj != null && obj instanceof NullComparator) {
                return ((NullComparator) obj).someField == someField ? 
                    true : false;
            } else return false;
        }
    
        public static void main(String[] args) {
            NullComparator comparator1 = new NullComparator();
            
            if (comparator1 == null)
                System.out.println("!= null");
            if (comparator1.equals(null)) 
                System.out.println(".equals(null)");
        }
    }
    Ответ написан
    Комментировать
  • Какую среду разработки Java вы используете?

    @lslayer
    Программист и сисадмин
    В enterprise стандартом де-факто является Eclipse.
    И по собственному опыту скажу что освоив Eclipse - легче перейти на IDEA.

    И (для многих немаловажно) IDEA денег стоит. :)
    Ответ написан
    Комментировать
  • Как Вы обрабатываете ошибки в своих ресурсах?

    @lslayer
    Программист и сисадмин
    В именно этом случае я бы сделал какой-то вспомогательный класс, который возвращает нужный статус в зависимости от класса ошибки.
    Например
    public static Status getStatus(Exception e) {
            if (e.getClass.equals(MyCoolUnautorisedException.class)) {
               return Status.UN_AUTHORIZED;
            }
            // More Exception handlers
         return null; //If something gone wrong
         }
      //Main code
        try {
           // some logic
        } catch (Exception e) { 
                  //   etc  LOGGER.error(e);
                  return Response.status(SomeStatusHandler.getStatus(e)).build();
        } finally {
            //Here we go!
        }
    Ответ написан
    4 комментария
  • Добавление записи в.txt на Java?

    @lslayer
    Программист и сисадмин
    x.format("Ваше название %s, Ваше %d число, Ваш комментарий %s", b, a, c);
        x.flush()
        x.close();


    Метод flush() записывает данные.

    PS. В комментариях дошли до такого решения:
    package tk.lslayer.temp;
    
    import java.io.BufferedWriter;
    import java.io.FileWriter;
    import java.util.Formatter;
    import java.util.Scanner;
    
    public class Main {
    static Formatter x;
    static Scanner scn;
    
    public static void main(String[] args) {
       try{
          x = new Formatter(new BufferedWriter(new FileWriter("src//1.txt", true)));
          scn = new Scanner(System.in);
          System.out.println("Число?");
          int a = (int)Double.parseDouble(scn.next());
          System.out.println("Название?");
          String b = scn.next();
          System.out.println("Комментарий?");
          String c = scn.next();
          x.format("Ваше название %s, Ваше %d число, Ваш комментарий %s", b, a, c);
          x.flush();
          x.close();
    
       } catch (Exception e) { }
    }
    }
    Ответ написан
    4 комментария
  • Какие есть способы передачи переменной из родительского в дочерний класс?

    @lslayer
    Программист и сисадмин
    Используйте магическое слово super =)

    Родительский класс:
    public class Parent {
        
        private String valueForPass = "some value";
        
        protected final String getValueForPass() {
            return valueForPass;
        }
    
    }


    Дочерний класс:
    public class Child extends Parent {
        
        private String myOtherValue = super.getValueForPass();
        
    }
    Ответ написан
    2 комментария

Лучшие вопросы пользователя

Все вопросы (2)