목록Some Memos (107)
Wanna be Brilliant Full-Stack Developer
지금 중괄호 안에 중괄호가 2개가 또 들어가 있는데 이런것을 2차원 배열이라고 한다. 저 첫번째를 첫번째 행이라고 하고 두번째를 두번째 행이라고 한다. 시작은 0번지 행이기 때문에 값이 제대로 나오지 않는다. 근데 0번지의 0번지라고 하면?! 여기서 3을 출력하기 위해서는 0번지행에 2번지라고 하면 값이 나온다. 이렇게하면 2행 2열의 배열이 나온다. 애는 몇행 몇열이 나올까? 행이 2개고 열이 3개니까 [2] [3] 이 나온다. nums2는 2의 2였으니까 어떻게 생겼는가 보자! 내가 값을 넣을때 0콤마 0번지 0콤마 1번지 이렇게하면 값이 어떻게 들어가겠는가? 이해하기 편하게 그림을 통해 보여진거고 실제 메모리에는? 하나의공간을 4바이트라고 하면 바이트 공간이 8개가 있으면 맨밑에를 0,0, 0,1,..
배열을 정의해보자면? 어떤 연관된 데이터를 저장하기 위한 자료구조이다. 내가 만약 숫자를 4,5,6 이 세가지 숫자를 저장하고 싶으면? 지금까지 배운 개념으로는 이 세가지 숫자를 저장하는 방법은 단 한가지 방법밖에 없다. 어떻게 해야하는가? 변수를 세개 만들어야한다. 연관된 데이터를 저장하기 위한 자료구조인 배열을 사용하면 하나의 변수로도 데이터를 저장이 가능하다. 저장하는 방법을 보자! 숫자 3개를 저장할떄 int [] 대괄호를 적고 변수명 nums를 적는다. 그리고= 하고 {중괄호로 4, 5, 6 }; 이렇게하면 연속된 데이터를 저장할 수 있다. 연관된 데이터를 연속되게 저장한다는게 무슨뜻인가? 우리가 어떤 메모리 공간이 있을때 하나를 4바이트라고 하면? 4바이트가 총 8개의 공간이 있는데 여기 8개..
SRP라는것은 무엇인가? 영어로 하면 Single Response Principle (단일 책임 원칙) 이라는 뜻이다. 단일 책임? 책임이라는것이 무엇인지 명확히 이해를 해야한다. 책임은 객체지향프로그래밍에서는 행위라고 한다. 즉 메서드이다. 우리가 집에 구성원이 있는데 엄마가 있고 아빠가 있고 아들과 딸이 있다. 그러면 엄마는 엄마가 집에서 요리도하고 빨래도 하고 청소도하고 3가지를 다해버리면 책임이 너무 많다. 그래서 책임을 분리하는것이다. 엄마는 요리만하고 아빠는 빨래를 하고 딸은 청소를 할수 있다. 책임을 다 분리를 하여 엄마는 요리를 하고 아빠는 빨래를 하고 딸은 청소를 할것이다, 이렇게 되면 장점이 하나 있다. 그러면 집이 더러우면 누구 때문인가? 딸이 문제이다. 딸에게 책임을 물을 수 있다...
@Overrid라고 붙어있는것은 주석과 비슷한건데 이거를 어노테이션이라고 부른다. 어노테이션은 JVM이 실행시에 분석해서 확인이라고 할 수 있는데 실행시에 분석시에 무엇을 확인하는가? 원숭이 클래스가 new가 되든지 메모리에 뜨면 그때에 Overrrid가 붙어있네? JVM이 실행시에 분석을 하여 부모에 채집이라는 메서드를 가지고 있는지 안있는지 확인을하고 안들고 있으면 오류가 뜬다. 어노테이션이 JVM의이 볼 수 있는 힌트같은 역할이라고 보면된다. 이 상태에서 모든 동물들에게 행위의 제약을 주고싶으면? 인터페이스라는걸 만들어보자! 주위해야할것은 public,이나 abstract라는것을 안적어도 생략이 되어있다. 제약을 Implements를 받을 수 있다. implements를 받기위해서는 class 앞에..