Please open Telegram to view this post
VIEW IN TELEGRAM
🤣25
Многие новички в Java совершают ошибку, забывая, что equals() и hashCode() должны быть согласованы. Это критически важно, если объект используется в HashSet, HashMap и других коллекциях.
class User {
private String name;
public User(String name) {
this.name = name;
}
@Override
public boolean equals(Object obj) {
if (this == obj) return true;
if (obj == null || getClass() != obj.getClass()) return false;
User user = (User) obj;
return name.equals(user.name);
}
}import java.util.Objects;
class User {
private String name;
public User(String name) {
this.name = name;
}
@Override
public boolean equals(Object obj) {
if (this == obj) return true;
if (obj == null || getClass() != obj.getClass()) return false;
User user = (User) obj;
return Objects.equals(name, user.name);
}
@Override
public int hashCode() {
return Objects.hash(name);
}
}
А
Если нет поставьте 👍
Если да поставьте
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15👍10❤1
Тут объясняют, как серверный код на Python и Java может переживать сбои: повторы, таймауты, graceful degradation и прочие лайфхаки для стабильной жизни.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Please open Telegram to view this post
VIEW IN TELEGRAM
😭21👍5
Конструктор — это особый метод, который автоматически запускается, когда создаётся объект. С его помощью удобно задавать значения для полей объекта.
• Имя конструктора всегда как у класса
• Он не возвращает значение
• Можно сделать несколько конструкторов с разными параметрами
public class User {
String name;
int age;
// Конструктор
public User(String name, int age) {
this.name = name;
this.age = age;
}
void printInfo() {
System.out.println(name + " — " + age + " лет");
}
public static void main(String[] args) {
User u = new User("Анна", 25);
u.printInfo(); // Анна — 25 лет
}
}User мы сразу передаём имя и возраст. Это удобно и сокращает лишний код.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤1👍1
Записки бывшего джависта, попавшего в DevOps-мир с кластером под мышкой. В статье — настройка JVM в k8s, выбор хранилища и чуть боли. Возможно, даже смешно.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
🎉6
Геттеры и сеттеры — это методы для безопасного доступа к полям объекта. Обычно поля класса делают private, а доступ к ним дают через специальные методы.
• Геттер возвращает значение поля
• Сеттер задаёт значение поля
Это позволяет контролировать доступ и добавлять проверку данных
public class User {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
if(name.length() > 0) {
this.name = name;
}
}
}Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18❤4
В статье разбирают, как в Spring Boot 3.3 поменялась распаковка JAR-файлов для Docker, что теперь иначе пишется в Dockerfile и как без боли адаптировать старые проекты под новые правила.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23