[NHN Academy]

    0720

    객체 정리 각각이 개체의 최종 작업은 모두 다름 -가비지 컬렉션을 객체의 정리를 결정할 수 없음 -jaca의 Object는 finalize 메서드를 가지고 있음 finalize는 실행을 보장하지 않고 예측할 수 없으며, 느리고 일반적으로 불필요 Java9 버전에서 deprecate 됨 try-with-resource문 -예외 발생 여부와 상관 없이 사용한 try절에 명시한 객체의 close() 메서드를 호출 -try 블록 내에서 사용된 객체를 try문이 종료되면 자동으로 리소스를 회수 -close()가 있는 객체만 들어갈 수 있음 상속은 구현을 확장하기 위해서 하는 것!!! 객체는 데이터가 있어도 직접 보여주지 않고 게터, 세터로 말을 함. 객체를 추상화하고 세분화하는 걸 공부하기..

    [참조 타입]

    참조 타입의 초기값은 null 값 타입과 참조 타입 비교 값 타입(Value Type) -데이터를 직접 포함 -복사된, 직접 가지는 데이터를 저장 : 자바에서 제공하는 8개의 기본 데이터 타입. 값 타입 변수는 단순하게 동작하며 선언된 변수는 변수 자체에 저장된다. 참조 타입 (Reference Type) -데이터(객체)가 있는 곳의 위치를 저장 -데이터는 분리된 메모리 영역에 저장됨 : 데이터 자체가 아닌, 데이터가 저장된 곳의 위치 값을 저장한다. (분리된 메모리 공간) 참조 타입 변수의 선언과 해제 선언 BankAccount account; account = new BankAccount(); account.accountNumber = 1; account.ownerName = "Dave"; 해제 ac..

    [객체 지향 프로그래밍]

    추상화 추상화란 어디서 어디까지가 내가 필요한 절차의 묶음이냐.. 클래스와 객체 -클래스란 일반적인 동작과 속성을 설명하는 이름 붙여진 문(statement)의 구조 -클래스란 객체를 찍어내기 위한 청사진 같은 것. -객체지향에서 클래스가 중요한 이유는 객체가 어떻게 동작할지 설명해놓은 것이기 때문에. 객체의 세가지 특징 1. Identity(ID): 한 객체는 다른 객체들과 구분될 수 있음 2. Behavior(행동): 객체는 작업을 수행함 (중요!) 3. Sate(상태): 객체는 상태를 포함함 클래스는 설계도. 객체는 설계도를 가지고 찍어낸 것. 클래스는 유전자. 객체는 유전자를 가지고 찍어낸 우리. 객체는 object 개체는 entity (entity는 데이터, 속성만 가져온다) 객체는 동작을 중심..

    [배열]

    [배열 개요] 배열이란? 요소를 순서대로 모아서 관리하기 위한 시퀀스형 자료구조다. 배열은 요소를 순서대로 모아서 관리하기 위해 만들어진 자료구조 -배열의 모든 요소는 같은 타입을 가짐 -각각의 요소에는 정수 인덱스를 사용해서 액세스 -메서드를 만들 때 그 메서드가 반환하는 값을 가지고 배열을 만들도록 해도 됨 (가변 길이 배열) 배열은 고정 길이 레코드, 같은 타입의 데이터 묶음, 속도가 굉장히 빠르다. 자바의 배열은 값 타입으로 가져옴. 정수형 인덱스를 가져와서 액세스한다. 배열은 힙 영역의 주소값이 스택에 저장된다. Java에서 배열 표기법 type[] name; 배열 변수 이름 / 배열의 차원/ 배열 변수 이름 배열의 차원 선형 1차원 배열과 표형 2차원 배열, 육면체형 3차원 배열 2차원 배열 ..

    Day3

    C 언어 프로그래밍 유닉스 바쉬셀 코드가 아주 예쁘다.. 객체에 동작을 표현하기 함수는 특정한 동작. 값을 넣으면 값이 튀어나오는 것. function: 기능. 동작 메서드는 클래스 안에서 어떠한 동작을 표현할 수 있는 것 자바나 씨샵 클래스 안에서 클래스의 동작을 설명하기 때문에. 메서드는 동작을 구현하기 위한 것 메서드가 로드되면 전용 스택이 하나 생김. 메서드는 한번 종료되면 다시 액세스할 수 없다. 지역 변수 전역 변수 알고리즘은 일단 플로우 차트를 그려보고 정리가 되면 코드를 짜라.. 자바는 주소값을 절대로 넘길 수 없다. 자바는 무조건 값을 복사해서 전달!! 중요함. (C, C#은 주소값을 넘길 수 있다. 같은 jvm을 쓰는 코틀린은 되지만 자바는 안됨.) 객체 지향을 쓰는 근본적인 이유: 재..

    Day2

    리턴은 두가지 의미가 있다. 반환. 귀환. 프로그래밍에서 반환. 호출자로 뭔가를 들고가는걸 뜻할때 return을 씀. (안 들고 갈때도 있음 void) 수학에서는 함수가 무조건 값을 반환해야 함. 프로그래밍을 하다보니 값을 반환 안할때도 있기 때문에 void가 생긴 것. 값타입과 참조타입 스택의 특징: 선입선출. 값타입은 데이터를 직접 포함한다. 이게 제일 중요햔 개념. 스택 안에 데이터를 직접 포함한다. 배열은 힙에 저장이 됨. public class valueType{} 이렇게만 써도 컴파일 됨. 다만 메인 함수가 없어서 실행은 안됨. 전산학의 기본.. 안되는 이유가 없으면 된다. 메인 메서드를 정해주면 스태틱 메서드니까 !!! C언어 포인터, 참조, 스태틱, 힙 무조건 이해하고 와야함.!!! 프로그..

    Day1

    오늘은 Java 소프트웨어 플랫폼, 플랫폼 구성 요소, 실행 환경, 개발 환경 + 각 환경을 구성하는 구성 요소, Java 계열 프로그래밍 언어와 각 실행 환경, Java 프로그래밍 언어와 실행 환경에 대해 배웠다. 어셈블리어는 cpu를 탄다. 모든 기기에 작동할 수 있는 언어를 만들어 보자고 해서 만들어 진게 C언어 1. Java 소프트웨어 플랫폼 소개 - 자바 언어로 기술된 프로그램을 개발하고 실행 할 수 있는 소프트웨어 모임의 총칭 -자바 프로그램의 실행 환경과 개발 환경 제공 *자바 프로그램은 운영체제나 하드웨어에 의존하지 않는 바이트 코드 (즁간 언어)추상적인 코드로 구현 *자바 프로그램은 운영 체제와 하드웨어에 맞게 개발된 자바 가상 머신 (JVM) 상에서 실행 *JVM, 표준 라이브러리 세트..