⭐ 웹 개발자 CS 학습
Q. 정적 메소드로만 구성된 클래스와 싱글톤 클래스의 차이점은?
정적 메소드가 있는 클래스
public class Utility {
public static void staticMethod() {
System.out.println("This is a static method.");
}
}
Utility.staticMethod();
싱글톤 클래스
public class Singleton {
private static Singleton instance;
private Singleton() {}
public static Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
Singleton singletonInstance = Singleton.getInstance();
Q. Java에서 인터페이스를 사용하는 이유는?
interface Animal {
void eat();
}
class Dog implements Animal {
public void eat() {
System.out.println("Dog eats");
}
}
Q. Method Overriding 기능이 실행되는 과정은?
class Animal {
void speak() {
System.out.println("Animal speaks");
}
}
class Dog extends Animal {
@Override
void speak() {
System.out.println("Dog barks");
}
}
Q. 간단 용어 해석
Q. 목록에서 중복 항목 제거
list_with_duplicates = ['a', 'b', 'b', 'c', 'c', 'a', 'b', 'a', 'c', 'a']
list_without_duplicates = list(set(list_with_duplicates))
print(list_without_duplicates) # ['a', 'b', 'c']
Q. 모든 사용자 HTTP 요청을 모니터링하고 필터링하는 공통 논리 구현
Q. Mutable/Immutable 에 대해 알고 있는지, 왜 사용하며, 구현 가능한지
Q. 세마포어/뮤텍스에 대해 알고 잇는지, 사용해 본 적이 있는지
Q. 지역 변수가 HEAP 에 할당되어 있습니까?
Q. 화살표 함수와 함수 개체 간 바인딩의 차이점
// Arrow function
const print1 = () => console.log(this.value);
// Traditional function
function print2() {
console.log(this.value);
}
const obj3 = { value: "obj3", getValue: () => obj1 };
const obj2 = { value: "obj2", getValue: () => obj3 };
const obj1 = { value: "obj1", getValue: () => obj2 };
// 함수에는 자체 'this'가 없으므로 동작이 변경되지 않습니다
print1(obj1.getValue().getValue()) // undefined
print2.call(obj1.getValue().getValue()); // obj3
Q. 델리게이션(위임) 패턴 이벤트
Q. 제어 컴포넌트란?
Q. 디바운스 및 스로틀 사용
함수가 실행될 수 있는 속도를 제한
디바운스된 함수는 마지막 호출 이후 일정 시간이 지난 후에만 실행
함수가 지정된 기간 동안 최대 한 번만 호출