자바 (ref. 자바의정석) 24

문자열의 비교 - JAVA

코딩테스트에도 문자열의 비교는 자주 활용되기 때문에 따로 정리를 하게 되었습니다. 이 내용을 몰랐을때 자연스럽게 '==' 연산자를 비교하려는데 값이 같은데 다르다고 출력이 되서 당황한 적이 있습니다. 우선 String 변수를 생성할때는 리터럴을 이용한 방식과 new 를 이용한 방식이 있습니다. 1. 리터럴을 이용한 방식은 string constant pool 이라는 영역에 선언한 문자열이 이 주소값을 가집니다. String str1 = "ddinguBlog"; String str2 = "ddinguBlog"; 위 같은 선언은 같은 주소를 가르키기 때문에 '==' 연산자를 사용해도 같다고 출력이 됩니다. 2. new 를 이용하게 되면 '==' 연산자로는 비교를 할 수 없습니다. String str = "d..

상수와 리터럴 - JAVA

상수(constant) 는 변수와 마찬가지로 값을 저장할 수 있는 공간 이지만, 변수와 달리 값을 저장하게 되면 다른 값으로 변경이 불가합니다. 변수 선언과 동일하며 변수타입 앞에 final 키워드를 붙여주면 됩니다. 상수는 반드시 선언과 동시에 초기화를 해야합니다. 왜냐하면 앞서 말씀드린 다른 값으로 변경이 불가 하기 때문입니다. public class constant { final int YEAR = 2022; // year 라는 이름의 상수 선언 final int AGE = 29; // age 라는 이름의 상수 선언 AGE = 30; //에러 } 상수는 모두 대문자로 하는 것이 암묵적인 관례이며, 여러 단어로 이루어져 있다면 '_' 로 구분합니다. 리터럴은 원래 20, 2.15, 'C', "ABC"..

변수란? - JAVA

변수란? 단 하나의 값을 저장할 수 있는 메모리 공간입니다. 선언방법? 변수 타입 , 변수 이름 public class variable { int year; // year 라는 이름의 변수 선언 int age; // age 라는 이름의 변수를 선언 } 변수의 선언 : 변수를 선언하게 되면 메모리 빈 공간에 변수타입에 맞는 공간을 확보, 변수 이름을 통하여 사용가능합니다. 초기화 : 변수를 선언할때는 초기화를 해야합니다. 메모리는 여러 프로그램이 공유하는 자원이기 때문에 쓰레기값이 있을 수 있기 때문입니다. 초기화 방법? public class variable { int year = 2022; // year 값 2022로 초기화 int age = 29; // age 값 29로 초기화 } ! 변수의 이름을 ..

자바언어의 특징

자바는 다른 언어에는 없는 많은 장점들을 가지고 있습니다. 대표적인 몇가지에 대해서 정리를 하겠습니다. 1. 운영체제에 독립적 - 자바 응용프로그램은 운영체제, 하드웨어가 아닌 자바가상머신(JVM) 하고만 통신하고 운영되기 때문에 자바로 작성된 프로그램은 운영체제, 하드웨어와 관계없이 실행이 가능하다. 2. 객체지향언어 - 상속, 캡슐화, 다형성이 잘 적용된 순수한 객체지향언어이다. 3. 자동 메모리 관리(Grabage Collection) - 자바는 가비지컬렉터가 자동적으로 메모리를 관리해줘서 프로그래밍에 집중할 수 있게 도와준다. 4. 네트워크와 분산처리를 지원 - Java API 를 통해 네트워크 관련 프로그램을 쉽게 개발 할 수 있도록 지원한다. 5. 멀티쓰레드를 지원한다. - 자바는 시스템과 관..