Java의 제네릭에 대해 설명해주세요.더보기-> 제네릭은 타입을 매개변수로 사용할 수 있게 하여 코드의 재사용성과 타입 안정성을 높이는 기능입니다.예를 들어, List는 String 타입만 저장하도록 제한할 수 있습니다.제네릭을 사용하면 어떤 장점이 있나요?→ 타입 안정성을 확보하고, 불필요한 형변환을 줄여 코드의 가독성을 높일 수 있습니다.제네릭을 사용하지 않으면 어떤 문제가 발생할까요?->타입 안정성이 보장되지 않아 형 변환 오류가 발생할 수 있고, 코드의 가독성과 재사용성이 떨어집니다.제네릭은 컴파일 타임에만 적용된다고 하는데, 런타임에는 어떤 영향을 미칠까요?-> 런타임에는 제네릭 정보가 사라지고 Object로 처리됩니다. 자바의 동시성 문제와 멀티쓰레드에 대해 설명하고 해결방법을 말씀해주세요.더..