본문 바로가기

Chapter02/Java

(4)
[ Java ] 이중해시맵 + 예시코드 이중해시맵: 키-값 쌍을 저장하는 해시맵이 또 다른 해시맵을 값으로 가지는 구조.  특정 키에 대한 다중 값을 관리하는 데 유용함. 자바에서는 HashMap 클래스를 사용하여 이중 해시맵을 구현할 수 있음.  해시맵과 비교//해시맵Map studentScores = new HashMap();studentScores.put("Alice", 90);studentScores.put("Bob", 75);//이중해시맵Map> studentGrades = new HashMap();Map aliceGrades = new HashMap();aliceGrades.put("Math", 90);aliceGrades.put("Science", 85);Map bobGrades = new HashMap();bobGrades.pu..
[ java ] 객체지향 개발 SOLID 5대 원리 + 예시코드 객체지향: 문제에 대해 데이터의 관점에서 이 프로그램을 바라보며 데이터를 가지고 있는 객체들 간의 관계를 정의해서 프로그램을 만든다. (cf.C는 절차지향적 언어임)  SRP 단일책임의 원칙 ,OCP 개방폐쇄의 원칙, LSP 리스코브 치환의 원칙 , ISP 인터페이스 분리의 원칙, DIP 의존성역전의 원칙 다섯가지 원칙의 초성을 따서 SOLID원칙 라고부는데 이 원칙에 걸맞는 코드는 결합도가 느슨하고 응집력이 높은 코드가 됩니다 !    소프트웨어 공학에서 모듈화는 응고결저 라고 암기하죠?결합도가 높을수록 응집도가 낮을수록 재사용성과 유지보수성이 높아집니다!   모든 상황에 이 원칙들을 적용하는데는 무리가 있을 수 있으나가독성좋고 재사용성이 높은 코드를 짜기 위해서 알아야하는 SOLID 원칙에 대해 알아..
[ Java ] 클래스 정의 클래스는 객체의 속성을 정의하고 이를 인스턴스화라고도 한다.Field (속성) + Method (행위) + Constructor (생성자) ● 필드 정의Static final private String name;                        접근지정자  타입    필드명 변수는 데이터를 담는 그릇예약어 사용 불가, 소문자로 시작해야함, 숫자 가능 , 특수문자 일부 가능 등 규칙있음.● 생성자 정의: 객체를 인스턴스화 할 때 가장 먼저 호출되는 메서드-> 클래스와 객체 간 새로운 인스턴스가 만들어질 떄 클래스가 가지고 있는 기본 속성에 대해 초기화값을 만들어주어야함. 생성자이름 = 클래스이름이고, 매개변수를 다르게해서 여러 개 정의할 수 있다. (오버로딩참고!) 반환타입은 없다JAVA의 모든 ..
[ Java ] Overloading 개념 + 예시코드 : 메소드 이름을 같게하고, 파라미터(타입, 순서, 개수)를 달리해 여러 메소드를 정의하는 방법  제가 예시 코드를 만들어보았어요 car라는 이름의 메소드는 파라미터를 색상만 갖는 경우, 색상과 유형을 갖는 두 가지 경우가 있습니다. 파라미터에 따라서 자동차의 가격을 반환하는데! car(String color, String type) 메서드는 주어진 색상과 유형에 따라 자동차의 가격을 반환합니다.car(String color) 메서드는 색상만 주어질 경우 기본 유형인 "sedan"의 가격을 반환합니다. public class Car { private Integer car(String color, String type) { int price; switch (ty..