본문 바로가기

이해를 위한 메모 공간

(14)
6.객체지향프로그래밍 자바는 객체지향 프로그래밍이라고한다. 객체란 무엇인가? 국어 사전에서의 객체의 뜻은 '의사나 행위가 미치는 대상'이라고한다. 주위에 있는 사람, 자동차, 건물등 눈에 보이는 사물을 객체라 볼 수 있다. 눈에 안보이는 것도 객체가 될 수 있다고 한다. 그렇단다. 자바에서 객체란 다양한 변수의 포함과 간단한 동작을 하는 소스들의 묶음정도로 보면 될 것 같다. 그 객체를 생성 할 수 있게 해주는 것이 클래스이고, 객체(혹은 인스턴스 라고도함)는 클래스의 속성을 가지고 생성된 변수, 메소드(함수와 같은 기능)의 집합체 정도로 이해된다. 순서로 따지면 맴버변수,메소드를 정의해놓은 클래스가 존재하고, 그 클래스의 변수,메소드의 기능을 변수처럼 정의해 만들어지는 객체(인스턴스) 가 있다. 위와 같이 Man이라는 이름..
4. 기본 연산자 연산자에 대한 간단한 복습 연산에 사용하는 기호를 연산자(operator)라고 한다. 항의 개수에 따라 단항, 이항, 삼항 연산자라고 부른다. 대입 연산자는 = 이고 오른쪽에서 왼쪽으로 값을 대입한다. 부호 연산자는 +- 를 말하는것이고 변수나 상수의 값을 양수로만들거나 음수로 만든다. 산술 연산자는 익히말하는 사칙연산 기호로서, + - * / 그리고 % 인 나머지 연산자를 사용한다. 증감 연산자는 단항 연산자이다. 변수앞이나 뒤에 ++, -- 연산자를 사용하여 값을 1 증가 시키거나 감소시킨다. 한줄에 쓰는것보다 나눠서 쓰는 것을 권장 한다고 함. 관계연산자는 비교 연산자이다. >, >> 를 사용한다. 연산자 우선순위는 1등인 (), [] 연산자를 잘 기억해뒀다가 둥근 괄호를 잘 활용하자.
3-4. 명시적 형변환과 묵시적 형변환 각 자료형들은 사용하는 메모리 공간 크기나 담을 수 있는 변수의 값이 다르기 때문에 연산을 하거나 변수의 값을 바꿀 때 자료형을 일시적으로 변환하게 된다. 크게 자료형이 변환됨을 프로그램에서 알리는 경우를 명시적 형변환이라 보고, 프로그램에서 크게 문제 되지않는 경우에 별도의 알림없이 형이 바뀌는 경우를 묵시적 변환으로 본다. 2byte 정수형 변수를 4byte 정수형 변수에 대입 하는것으로 크기에 따른 형변환이 일어 났음에도 별 다른 에러없이 진행 됨 이런것을 묵시적 형변환이라 함. 자신보다 크기가 작은 형변환에서는 프로그램에서 할 수 없다는 에러가 뜨게된다. 알면서도 형을 강제로 변환시키는 것을 명시적이자 강제적 형변환이라고 한다. 그리고 4byte에서는 허용가능한 수를 2byte에서는 정확하게 표현..
3-2.상수와 리터럴상수 상수(Constant)는 처음 정한 수에서 바뀌지않는 수 절댓값이라고 생각하면 되는것인가. 리터럴(literal)이란 프로그램에서 사용하는 모든 숫자,문자,논리값(true,false)를 일컫는 다고 함. (책에 있는 내용 그대로임;) 그리고 이 리터럴도 상수인데 상수 풀이라는 곳에 존재하는 값이 바뀌지않는 것들이다. 내가 이해한바로는 프로그램에서 변수를 선언하고 특정한 값을 타이핑해서 대입할 때, 단순히 사용자가 기입한 것을 바로 대입한다기 보다, 사용자가 타이핑 한 문자나 숫자가 상수풀에 이미 존재하기 때문에 그것을 첮어소 상수풀에서 꺼내와 변수에 대입하는것으로 이해 됀다. 모르는단어가 있을 때 사전을 찾아서 확인하는 것처럼? 이미 존재하는 단어 이기에 그 단어의 뜻을 알고 사용할 수 있는것과 같다고 ..
2-2.양수 음수 보수에 대한 이해 양수는 +가 생략된 정수이고, 일반적으로 2진법의 정수는 [1][1][1][1][1][1][1][1] =256 가지의 수가 나오고, 실제로 사용 가능한 수는 0~255 이다. (가짓수에 0이 포함되기 때문에 256 이되는 것) 하지만 음수를 표현 하기 위해 위 8비트중 반으로 나눠 ([1][1][1][1]/[1][1][1][1]) 절반을 음수의 영역으로 지정한다. 그래서 정수의 표현은 [00001111](편의를 위해 바꿈) 0~127까지로 표현되고 음수의 표현은 [11110000] 128~255이면서, 255=-1 254=-2 와 같은 음수로도 표기가 된다. 실제 연산으로 예를 들어보는게 이해가 잘 되겠다. EX) [00000011] = 정수 3 [11111101] = 음수-3(정수 253) [00000..
2-1. bit, byte 개념 및 2, 8, 10, 16진법에 대한 이해 2진법 = 2가 되면 올림수가 발생하는 진법(2진법에서는 2가 존재할 수 없음) EX) [0]에서 [1]이되고 [2]가 되는순간 올림이 발생하며 [1 0] 이 된다 EX2) [1 0]에서 [1 1]이되고 [1 2]가 되는순간 올림이 발생하며 [2 1] 이 되지만 2가 존재할수 없기에 다시한번 올림하여 [1 0 0] 이 된다. 기본적으로 [0],[1] 처럼 [ ] 안의 수 하나를 bit 단위라고 한다. 이 bit가 4개가 모이면 nibblebyte 이라고 하고, 8개가 모이면 byte 하고 한다. 그리고 byte가 1024개 모이면 kliobyte가 된다. 그 뒤로 megabyte나 gigabyte도 1024씩 곱해진다.(1024kbyte = 1mbyte, 1024mbyte = 1gbyte) 기계는 자신이..