기술공부 167

JAVA - 열거 타입

C와는 열거타입 취급이 조금 다른듯 하다. 열거 타입 선언을 위해서는 열거 타입 이름으로 소스 파일(.java)를 생성한다. 열거 상수는 객체기 때문에 참조 타입 변수에 해당한다. Week today = Week.SUNDAY; 열거 타입의 Week의 경우 MONDAY ~ SUNDAY로 구성된 7개의 Week 객체로 Heap 영역에 생성된다/ SUNDAY 등의 열거 상수 들은 메소드 영역에 생성되어 Week 객체를 참조한다. 열거 타입 변수 today는 스택 영역에 생성된다. 열거 객체는 열거 상수의 문자열을 내부 데이터로 갖고 있다. (Week에는 MONDAY ~ SUNDAY 문자열 존재) 열거 타입에 관한 메소드들이 존재 한다. 리턴타입 메소드(매개 변수) 설명 String name() 열거 객체의 문..

Deperecated/JAVA 2020.01.04

JAVA - 향상된 for문

자바 5 부터 지원하는, 카운터 변수와 증감식을 사용하지 않는 for문. public class Hyunndy { public static void main(String[] args) { int[] oldarray = {1, 11, 12}; int total = 0; // 괄호( 배열에서 꺼낸 항목을 저장할 변수, 배열) // 실행 // 1. 배열에서 가져올 첫 번째 값이 존재하는지 평가 // 2. 존재하면 변수에 저장 // 3. 실행문 실행 for(int num : oldarray) { total += num; System.out.println(total); } } }

Deperecated/JAVA 2020.01.04

2019.12.xx 체공녀 강주룡

한번에 술술 읽혔던 책. 리뷰를 쓰려고 다시 내용을 생각했는데 역시 사람에겐 경험이 중요하다. 과거 우리나라 여성들에겐 견문을 넓히고, 다른 사상과 용기를 가지게 될 경험을 할 "기회"가 없었던 것 같다. 많은 여성들이 강주룡 처럼 자신을 부엌데기로 정의할것이 아니라 비록 서방을 따라갔을지 언정 독립이란, 투쟁이란 뭔지 생각해보고 장군이라 불리는 사람과 함께 가슴뛰는 경험을 했었더라면 우리나라엔 훨씬 더 많은 여성들이 역사서에 기록됐을거라 생각한다. 다시 가족에게 돌아갔지만 수동적으로 운명에 굴하지 않고 떠난 강주룡을 보며 참 많은 생각이 들었다. 뭐든 강주룡 처럼 거침없이 자신을 믿고 나아가면 되는것이다. 도망친곳에 나락은 없을지라도 강주룡은 거리를 거닐고, 자기 돈으로 카페도 가고 모단 걸 사진도 모..

개인/독후감 2020.01.02

2019.12.30 가만한나날

송파도서관 추천코너에서 보고 빌린 책. 첫째날에는 대출, 예약되어있어서 둘째날에나 빌릴 수 있었다. 여러개의 단편집을 묶은 소설로, 각 주인공들의 '첫' 경험을 담고있다. 연애, 취업, 결혼 등... 주인공들과 같은 이십대 중후반의 입장에서 소설 속 주인공들 처럼 나의 여러 첫경험들에 대해 생각해보게 되었다. 연애는 처음엔 마냥 좋았고 헤어지는건 힘들었지만 대체적으로 일주일정도면 나았고 취업은 속 주인공 처럼 시작인데 꼭 끝인것 같은 생각이 들었다. 속 주인공이 자기 전에 했던 생각들, 소동에 마주친 옆집 여자를 보면서 든 생각들이 왜 공감이 드는지 읽으면서도 이상했다. 퇴사는 모르겠다. 도망친 것 같기도 하고 의 주인공처럼 나의 '별 생각없었음'과 '애써 외면' 했던것들을 드디어 깨닫게 된건지. 내가 ..

개인/독후감 2019.12.30

JAVA관련 토막 지식.

1. 리터럴(literal) - 소스 코드 내에서 직접 입력된 값 2. JVM의 메모리 사용 영역 - JVM은 운영체제에서 할당받은 메모리 영역을 1. 메소드 영역 / 2. 힙 영역 / 3. 스레드로 구분해서 사용한다. 메모리 영역 설명 설명2 메소드 (Method 영역) 코드에서 사용되는 클래스(~.class)를 클래스 로더로 읽어서 클래스 별로 1. 런타임 상수풀(runtime constant pool) 2. 필드 데이터(field) 3. 메소드 데이터(method) 4. 메소드 코드 5. 생성자(constructor) 코드 등 으로 분류해서 생성한다. JVM이 시작할 때 생성되고 모든 스레드가 공유하는 영역이다. 힙 (Heap 영역) 배열과 객체가 생성되는 영역. JVM의 스택 영역의 변수나 다른 ..

Deperecated/JAVA 2019.12.19

비트 연산자 뽀개기

봐도봐도 기억 안나는 비트 연산자.. 비트 너무싫어 하드웨어 싫어 싫어싫어 하다보니 이 지경 까지.. 확실히 뽀개놓는다. 1. 비트 연산이란? 비트단위로 연산을 진행 하는 것. CPU에겐 곱셈과 나눗셈은 매우 부담이 되는 작업이지만, 비트를 이동시키는 연산은 전혀 부담되지 않는다. Flag 처리에 주로 쓰인다. 예를 들어, 4Byte면 Bit가 32개 이므로 32개의 상태 처리가 가능하다. 2. 비트 연산자 비트 연산자 설명 활용 & 비트 단위로 AND 연산을 한다. 둘 다 1이면 1 Flag가 켜져있는지 확인 if(Flag & 1) 1이 켜져있는지 if(Flag & 2) if(Flag & 4) if(Flag & 8) | 비트 단위로 OR 연산을 한다. 하나만 1이면 1 Flag | 1 // 0000 0..

JAVA 기본서 공부 - 4 <연산자>

기본 연산자에 관한 내용은 너무 기본적이라 뺐음. 1. Short-Circuit Evaluation AND 혹은 OR의 연산에 있어서 결과가 확실히 예측 되었을 경우 뒤의 나머지 연산을 실행하지 않고 답을 내는 경우. 빠르게 연산을 진행하기 위해 넣은 것. Class Hyunndy { public static void main(String[] args) { int num1=0, num2=0; boolean result; result = (num1+=10) 0; System.Out.Println("result ="+result); System.Out.Println("num1="+num1+", num2 = "+num2); 출력 결과: result = false; num1 ..

Deperecated/JAVA 2019.12.19

JAVA 기본서 공부 -3 <상수>

1. 상수(= 리터럴)의 저장 상수는 "자료형을 기반"으로 저장된다. 하지만 자바의 상수 저장방식은 기본적으로 "고정"되어 있다. 상수 타입 저장 방식 정수 int 실수 double 2. 접미사 자바는 상수의 자료형 검사에 매우 엄격하다. 상수의 크기(데이터)를 기준으로 자료형을 결정짓지 않고, 정수형은 무조건 int, 실수형은 무조건 double로 표현하기 때문에, 그 이 외의 다른 자료형으로 표기하려면 접미사를 붙여야 한다. class Hyunndy { pubilc static void main(String[] arm) { long num1 = 1000000000; // 컴파일 불가 int num2 = 1000000000; // 컴파일 불가 long num3 = 10000000000L; // 컴파일 ..

Deperecated/JAVA 2019.12.19

JAVA 기본서 공부 -2 <변수&자료형>

1. 변수란? 데이터의 저장과 참조를 위해 할당된 메모리 공간. 결국 변수를 선언해서 데이터를 저장하고, 그 변수를 이용해 이리저리 써먹는것이 코딩의 기본. 2. 프로그래밍에서의 실수 소수점 이하의 값이 존재하는 숫자 3. JAVA의 기본 자료형(Primitive data type) 자료형 메모리 크기 데이터 bool 1 바이트 true or false char 2 바이트 모든 유니코드 문자 byte 1 바이트 정수 short 2 바이트 정수 int 4 바이트 정수 long 8 바이트 정수 float 4 바이트 실수 double 8 바이트 실수 4. 정수의 표현 방식 " 몇 바이트로 정수를 표현할 것인가? " -> 정수는 1,2,4,8바이트로 표현할 수 있다. 정수의 부호 컴퓨터의 표현 방식 양 가장 왼..

Deperecated/JAVA 2019.12.19

진수 뽀개기

나는 살면서 내 머리가 나쁘다는 생각을 별로 해본적이 없는데... 항상 n진수는 공부할 때 마다 까먹는다...왜?왜지..? 컴구 시간에 자서..? 공부를 안해서..? 내 머릿속의 지우개... 이번 기회에 N진수를 확실히 뽀개보겠다. 1. N진수란? N은 데이터를 표현하는데 사용하는 기호의 개수를 의미한다. 2. 자릿수 N진수는 N의 몇 승으로 각각의 자릿값을 더해 숫자를 표현할 수 있다. 3. 2진수 컴퓨터를 구성하는 회로에서 전기가 통할 때 1, 통하지 않을 때 0 두 가지 상태만 존재한다. 그래서 미국의 수학자는 이를 bit(비트)라 했고, 이는 오늘날 컴퓨터에서 표현되는 데이터의 기본 단위가 된다. 4. 16진수 왜 16진수를 알아야 할까? 이는 컴퓨터가 2진수를 쓰기 때문에, 큰 수를 표현할 때 ..