전체 글 Java, Spring/JAVA 기초 정리 2022. 7. 21. 2-3강 클래스의 이해 - Data Type(1) 자바의 char 형은 2byte이다. ( 유니코드 ) 본 자료를 참고하였습니다. 꾸준히 다시보자. 1. 220725 2. 220814 Java, Spring/JAVA 기초 정리 2022. 7. 21. 2-2강 클래스의 이해 - 필드의 정의 인스턴스 변수 : 클래스의 필드 본 자료를 참고하였습니다. 꾸준히 다시보자. 1. 220725 2. 220814 Java, Spring/JAVA 기초 정리 2022. 7. 21. 1-1강 자바란? 자바 소개 # 자바 어플리케이션 동작 방식 자바는 컴파일방식, 인터프리터 방식 둘 다 사용함. 본 자료를 참고하였습니다. 꾸준히 다시보자. 1. 220725 2. 220814 Basic Grammar/Java 2022. 7. 21. JAVA의 메모리구조 정리 addNum 메서드에서는 원래의 num1, num2, sum은 사용할 수 없다. 메서드에서 사용했던 지역변수들이 사라지기전에 sum에 재할당 작업이 이뤄진 것이다. # HEAP String은 object 클래스의 상속을 받아 구현되는 것이기 때문에 heap영역에 할당된다. 스택의 name이라는 변수는 heap의 String인 SejinCho를 레퍼런스하게된다. 이 경우 새롭게 힙영역에 할당된다. 그러면 기존의 https://를 레퍼런스하고 있는 변수가 없어지게 되어 unreachable object가 된다. 가비지 컬렉터는 unreachable object를 처리한다. Basic Grammar/Java 2022. 7. 20. 14강 - 자바 메모리구조 이해하기 컴파일 : JVM이 이해 할 수 있는 코드 실행 : 실행하면 JVM이 받는다. 1. .class 파일 로드 ( 불러옴 ) 2. static 찾기 3. main 메서드 실행 : 이 때 main큐가 오픈되고 코드 순서대로 실행된다. ( 우리가 아는 호출스택과 main큐가 같이 오픈된다. ) 호출 스택 중 main 메서드에 main안의 지역변수가 저장된다. 걍 기본적인 프로그램 흐름 Basic Grammar/Java 2022. 7. 20. 자바 - 12강 일반변수와 레퍼런스변수 일반 변수 : 실행하기 전부터 ( 컴파일 시에 ) 크기가 정해져 있는 것 레퍼런스 변수 : 컴파일 시점에 크기가 정해져 있지 않는 것 (=실행 시 정해짐) int num; -> 변수를 선언한다. int num=10; -> 변수를 초기화(메모리에 할당)한다. 컴파일 시 d의 크기를 모름 -> 실행 시 알게됨 new하면 heap에 저장됨. 일반 변수는 값을 가지고 있고 레퍼런스 변수는 주소를 가지고 있다. ( 한 번 더 가서 값을 찾는다. ) ( 레퍼런스 변수는 컴파일시 크기를 모르기 때문에 heap 영역에 넓게 잡아놓고 주소를 가지게됨 ) 레퍼런스 변수 1, 1000 각각 4byte씩 먹는다. 출처 : https://wikidocs.net/book/31 Basic Grammar/Java 2022. 7. 20. 자바 9강 - 자바코드 실행원리 1. 모든 자바 코드는 클래스 내부에 존재해야한다. 2. 자바는 static 인 것들을 실행 전에 메모리 static 공간에 로드한다. 3. 자바를 실행하면 main이라는 친구의 내부(= 중괄호) 를 실행한다. 4. 내부가 끝나면 종료된다. 1. .java 파일을 저장과 함께 컴파일한다. 2. .class 파일로 바뀐다. ( JVM이 이해 할 수 있는 코드 ) 3. JVM이 .class 파일을 가져와서 실행시킨다. 4. 가져와서 가장 먼저 하는 것: 파일 내부를 복고 static이 있는지 체크 -> 있으면 static 메모리에 할당( 안의 값을 저장하는 것이 아니라 주소이름인 main만 로드, 로드 후 실행 5. 내부(=중괄호)를 실행할 때 main의 stack이 열림 6. 10을 모니터에 출력 7. 내.. Basic Grammar/Java 2022. 7. 17. 자바의 레퍼런스 타입 출처 : https://wikidocs.net/book/31 Basic Grammar/Java 2022. 7. 16. 함수형 인터페이스 인터페이스 MyFunction은 메서드 max를 가진다. 익명클래스 선언과 객체 생성을 동시에 ( 오버라이딩 중 ) ( new 조상클래스(or 인터페이스) {멤버들 선언} 함수형인터페이스가 있으므로 new Object() 대신 new MyFunction()을 사용 하지만 이제 max라는 메서드를 가지므로 f.max로 호출가능 여기서 메서드 대신에 람다식으로 바꿀 수 있다. ( 함수형 인터페이스 타입의 참조변수로 람다식을 참조할 수 있다.) = MyFunction 타입의 참조변수 f 로 람다식 참조할 수 있다. -> 람다식 다룰 수 있다. ( 함수형 인터페이스는 람다식 다루기 위해 사용) 함수형 인터페이스라고 @FunctionalInterface 붙혀주면 만약 추상메서드 두 개 작성 시 에러 띄워줌 인터페.. Basic Grammar/Java 2022. 7. 16. 람다식 # 람다식 작성법 1. 2. 3. # 주의사항 # 람다식은 익명객체 람다식은 new Object() 로 표현할 수 있다. 하지만 Object의 메서드는 아니므로 obj.max는 접근 불가 -> 함수형 인터페이스 우아한10분테크톡 2022. 7. 14. Nginx https://www.youtube.com/watch?v=6FAwAXXj5N0 https://www.youtube.com/c/%EC%9A%B0%EC%95%84%ED%95%9CTech 우아한Tech 우아한형제들의 기술조직 이야기를 전하는 우아한Tech입니다. 우아한형제들 https://www.woowahan.com/ 우아한Tech 페이스북 https://www.facebook.com/woowahanTech 우아한형제들 기술블로그 http://woowabros.github.io/ www.youtube.com 매우 구체적으로 적혀있다. 꼭 다 읽어보자. 꾸준히 다시보자. 1. 220812 2. 220831 우아한10분테크톡 2022. 7. 10. MVC 원래 1, 2 번만 생각했었지만 테스트의 용이성도 뷰와 모델의 분리에서 오는 장점이라는 것을 처음 알게 되었다. https://www.youtube.com/watch?v=86NxhHptx7s 이전 1 ··· 16 17 18 19 20 21 22 ··· 24 다음