- 필수 기능
- 시작하기
- Glossary
- 표준 속성
- Guides
- Agent
- 통합
- 개방형텔레메트리
- 개발자
- Administrator's Guide
- API
- Datadog Mobile App
- CoScreen
- Cloudcraft
- 앱 내
- 서비스 관리
- 인프라스트럭처
- 애플리케이션 성능
- APM
- Continuous Profiler
- 스팬 시각화
- 데이터 스트림 모니터링
- 데이터 작업 모니터링
- 디지털 경험
- 소프트웨어 제공
- 보안
- AI Observability
- 로그 관리
- 관리
ID: java-best-practices/loose-coupling
Language: Java
Severity: Notice
Category: Best Practices
Relying on particular implementation types, such as, HashSet
or LinkedList
can limit your adaptability to embrace alternative implementations in the future, particularly as your requirements change and your code needs to undergo changes.
It is recommended to opt for general types such as Set
or List
when declaring variables and parameters.
import java.util.ArrayList;
import java.util.HashSet;
import java.util.HashMap;
public class Foo {
private ArrayList<SomeType> list = new ArrayList<>();
public HashSet<SomeType> set = new HashSet<SomeType>();
public HashMap<SomeType> getMap() {
return new HashMap<SomeType>();
}
public String foo(HashMap<String, String> map) {
return map.get("foo");
}
}
import java.util.ArrayList;
import java.util.HashSet;
import java.util.HashMap;
public class Foo {
private List<SomeType> list = new ArrayList<>();
public Set<SomeType> set = new HashSet<SomeType>();
public Map<SomeType> getMap() {
return new HashMap<SomeType>();
}
public String foo(Map<String, String> map) {
return map.get("foo");
}
}
|
|
For more information, please read the Code Analysis documentation
Identify code vulnerabilities directly in yourVS Code editor
Identify code vulnerabilities directly inJetBrains products