[Java] Java를 복습해보자
·
Language/Java
Java의 컴파일 과정자바 프로그래머가 `.java`의 확장자를 갖는 소스 파일을 생성한 뒤 `javac` 컴파일러를 이용해 `.class`의 확장자를 갖는 바이트 코드를 만들어내는 것을 컴파일 과정이라고 한다. Java 프로그램은 바로 실행이 가능할까?Java 프로그램은 완전한 기계어가 아닌 중간 단계의 바이트 코드를 사용한다.그렇기에 이것을 해석하고 실행할 수 있는 가상의 운영체제가 필요하다.해당 가상 운영체제는 JVM으로, JVM 덕분에 우리는 다른 운영체제에서도 JVM만 설치되어있으면,동일한 결과를 내는 Java 프로그램을 수행할 수 있게 된다.즉, 운영체제마다 Java 프로그램을 개발하는 것보다 운영체제와 자바 프로그램을 중계하는 JVM을 두어,어떤 운영체제에서도 동일한 실행 결과가 나오도록 설..
[Kotlin] Enum Class & Data Class
·
Language/Kotlin
Kotlin 데이터 클래스일반적으로 레이어간 데이터 전달을 위해 `DTO`라는 객체를 생성하여 사용한다. `Kotlin`에서는 이러한 역할을 수행할 수 있는 데이터 클래스를 제공하는데데이터 클래스를 사용하면 아래와 같은 메소드를 자동으로 생성해준다.equalsgetter/setterhashCodetoStringcopycomponentN `Kotlin`에서 데이터 클래스는 아래와 같은 형식으로 정의할 수 있다.data class DataClassSample(val name: String, val age: Int) 클래스 앞에 `data` 키워드를 붙여 정의한다.  열거형 클래스우리는 `Enum` 클래스를 사용하여 일정 범주 안에 들어갈 수 있는 상수들을 묶어 관리할 수 있다. `Enum` 클래스를 사용하는..
[Kotlin] 상속
·
Language/Kotlin
Kotlin 상속상속은 상위 클래스에 중복되는 로직을 구현하고 이를 재사용하는 것을 말한다.상속의 관계를 흔히 `부모-자식` 클래스라고 부르며 `Is-a` 관계라고도 부른다. ex. Person(parent) - Student(child)  코틀린의 상속코틀린에서는 모든 클래스가 `Any`를 상속 받고 있는 구조이다.`Any`에는 `equals()`, `hashCode()`, `toString()`이 구현되어 있다. public open class Any{ public open operator fun equals(other: Any?): Boolean public open fun hashCode(): Int public open fun toString(): String} ..
[Kotlin] 클래스
·
Language/Kotlin
Kotlin  클래스 `Kotlin` 클래스의 선언은 클래스 이름을 포함하여 매개변수, 생성자, 그리고 중괄호로 묶인 본문으로 구성됨 간단 예제class Person{ var name: String = "Yoonsoo" var age: Int = "15" var country: String = "South Korea" var height: Int = 150 var weight: Int = 30 fun sayHello(){ println("Hi") } fun introduce(){ println("I'm $name and my age is $age.") }}  생성자`Kotlin`의 생성자는 아래와 같은 형식으로 구성이 가능하다. cl..
[Kotlin] 함수
·
Language/Kotlin
Kotlin 함수함수는 input 값을 받아 일련의 기능을 수행하는 코드 구성을 의미한다.함수는 결과물을 돌려주거나 돌려주지 않을 수 있다.   함수의 선언함수의 선언은 아래와 같은 형식으로 작성할 수 있다.fun 함수명(인자: 타입, 인자: 타입) : return 타입 { return 리턴값}fun sum1(a: Int, b: Int): Int{ return a + b}// return을 생략한 표현식도 가능fun sum(a: Int, b: Int) = a + b return 타입을 지정하지 않을 수도 있는데 그땐 `Unit`이라는 것을 입력해주면 된다.이때 `Unit`은 생략이 가능하다.우리가 여태까지 앞서 학습한 내용의 `main`메소드가 `Unit`의 예제라고 생각하면 된다.  간단한 예제로 살펴..
[Kotlin] 조건문과 반복문
·
Language/Kotlin
Kotlin if문`if 문`은 모든 언어에서 사용이되는 것처럼 조건을 판단하여 코드의 흐름을 제어한다.여러 조건을 사용해야 할 경우 자바와 동일하게 `else if`, `else` 키워드를 사용하면 된다.  if 문의 문법 예 var max = aif(a b){ max = a} else { max = b}// As expressionmax = if(a > b) a else b// You can also use 'else if' in expressions:val maxLimit = 1val maxOrLimit = if (maxLimit > a) maxLimit else if (a > b) a else b when 문when문은 여러 케이스에 대해 구분하기 위해 사용되며, if문을 사용하기엔 비교적 케이..