대상
30대 비전공자 친구(무역 업무를 오래 하다가 개발자가 되고 싶어서 도전 중)
교육 내용
인텔리제이 설치
IntelliJ IDEA – Java 및 Kotlin을 위한 최고의 IDE
www.jetbrains.com
주석
// 한 줄 주석
/*
여러 줄 주석
여러 줄에 걸쳐 주석을 작성할 때 사용합니다.
*/

변수
int number = 10; // 정수형 변수
double pi = 3.14; // 실수형 변수
String name = "John"; // 문자열 변수
boolean isJavaFun = true; // 불리언 변수
교육을 하다가 신기한 것을 알게 되었다.
캐릭터 자료형의 경우
char = '1' 등과 같이 썻을 때 더하거나 연산을 하지 않는 이상 int로 캐스팅을 하지 않아도 그냥 1으로 써진다는 것
타입
int age = 25; // 정수형 타입
double salary = 45000.50; // 실수형 타입
char grade = 'A'; // 문자형 타입
boolean isAvailable = false; // 불리언 타입
String message = "Hello, World!"; // 문자열 타입 (참조 타입)
원시형 자료형 (Primitive Types)
종류: byte, short, int, long, float, double, char, boolean
저장 위치: 스택 메모리 크기: 고정된 크기 (예: int는 4바이트)
기본 값: 각 타입에 따른 기본 값이 있음 (예: int의 기본 값은 0)
불변성: 값 자체가 변경되지 않음 성능: 참조형보다 빠름
참조형 자료형 (Reference Types)
종류: 배열, 클래스, 인터페이스, 열거형 등
저장 위치: 힙 메모리 (참조 변수는 스택에 저장됨)
크기: 객체에 따라 다름
기본 값: null불변성: 객체의 속성은 변경 가능 성능: 원시형보다 상대적으로 느림
변수명 관례
int studentAge = 20; // Camel Case 사용
double averageScore = 85.5;
String firstName = "Alice";
boolean isPassed = true;
증감 연산자
int a = 10;
a++; // a를 1 증가시킴, a는 이제 11
a--; // a를 1 감소시킴, a는 이제 10
int b = 5;
++b; // b를 1 증가시킴, b는 이제 6
--b; // b를 1 감소시킴, b는 이제 5
비교 연산자
int x = 5;
int y = 10;
System.out.println(x == y); // false, x와 y가 같은지 비교
System.out.println(x != y); // true, x와 y가 다른지 비교
System.out.println(x > y); // false, x가 y보다 큰지 비교
System.out.println(x < y); // true, x가 y보다 작은지 비교
System.out.println(x >= y); // false, x가 y보다 크거나 같은지 비교
System.out.println(x <= y); // true, x가 y보다 작거나 같은지 비교
논리 연산자
boolean a = true;
boolean b = false;
System.out.println(a && b); // false, 논리 AND 연산자
System.out.println(a || b); // true, 논리 OR 연산자
System.out.println(!a); // false, 논리 NOT 연산자
대입 연산자
int num = 10;
num += 5; // num은 이제 15 (num = num + 5)
num -= 3; // num은 이제 12 (num = num - 3)
num *= 2; // num은 이제 24 (num = num * 2)
num /= 4; // num은 이제 6 (num = num / 4)
num %= 5; // num은 이제 1 (num = num % 5)
조건문
int score = 85;
if (score >= 90) {
System.out.println("A 학점");
} else if (score >= 80) {
System.out.println("B 학점");
} else if (score >= 70) {
System.out.println("C 학점");
} else if (score >= 60) {
System.out.println("D 학점");
} else {
System.out.println("F 학점");
}
반복문
// for 반복문
for (int i = 0; i < 5; i++) {
System.out.println("For Loop: " + i);
}
// while 반복문
int j = 0;
while (j < 5) {
System.out.println("While Loop: " + j);
j++;
}
// do-while 반복문
int k = 0;
do {
System.out.println("Do-While Loop: " + k);
k++;
} while (k < 5);
느낀 점
나도 개발을 시작할 때 이렇게 어려워 했던가? 라는 생각과 함께 노베이스의 시각에서 눈을 맞춰볼 수 있어서 좋았다.
아주 흥미로운 점은, 당연하다고 생각 했던 것들에 대해서 왜? 라는 질문을 가지는 초심자의 순수함에서 되려 반성할 부분이 많았다는 것이다.
나도 물으며 살아 가야겠다. 왜?
대상
30대 비전공자 친구(무역 업무를 오래 하다가 개발자가 되고 싶어서 도전 중)
교육 내용
인텔리제이 설치
IntelliJ IDEA – Java 및 Kotlin을 위한 최고의 IDE
www.jetbrains.com
주석
// 한 줄 주석
/*
여러 줄 주석
여러 줄에 걸쳐 주석을 작성할 때 사용합니다.
*/

변수
int number = 10; // 정수형 변수
double pi = 3.14; // 실수형 변수
String name = "John"; // 문자열 변수
boolean isJavaFun = true; // 불리언 변수
교육을 하다가 신기한 것을 알게 되었다.
캐릭터 자료형의 경우
char = '1' 등과 같이 썻을 때 더하거나 연산을 하지 않는 이상 int로 캐스팅을 하지 않아도 그냥 1으로 써진다는 것
타입
int age = 25; // 정수형 타입
double salary = 45000.50; // 실수형 타입
char grade = 'A'; // 문자형 타입
boolean isAvailable = false; // 불리언 타입
String message = "Hello, World!"; // 문자열 타입 (참조 타입)
원시형 자료형 (Primitive Types)
종류: byte, short, int, long, float, double, char, boolean
저장 위치: 스택 메모리 크기: 고정된 크기 (예: int는 4바이트)
기본 값: 각 타입에 따른 기본 값이 있음 (예: int의 기본 값은 0)
불변성: 값 자체가 변경되지 않음 성능: 참조형보다 빠름
참조형 자료형 (Reference Types)
종류: 배열, 클래스, 인터페이스, 열거형 등
저장 위치: 힙 메모리 (참조 변수는 스택에 저장됨)
크기: 객체에 따라 다름
기본 값: null불변성: 객체의 속성은 변경 가능 성능: 원시형보다 상대적으로 느림
변수명 관례
int studentAge = 20; // Camel Case 사용
double averageScore = 85.5;
String firstName = "Alice";
boolean isPassed = true;
증감 연산자
int a = 10;
a++; // a를 1 증가시킴, a는 이제 11
a--; // a를 1 감소시킴, a는 이제 10
int b = 5;
++b; // b를 1 증가시킴, b는 이제 6
--b; // b를 1 감소시킴, b는 이제 5
비교 연산자
int x = 5;
int y = 10;
System.out.println(x == y); // false, x와 y가 같은지 비교
System.out.println(x != y); // true, x와 y가 다른지 비교
System.out.println(x > y); // false, x가 y보다 큰지 비교
System.out.println(x < y); // true, x가 y보다 작은지 비교
System.out.println(x >= y); // false, x가 y보다 크거나 같은지 비교
System.out.println(x <= y); // true, x가 y보다 작거나 같은지 비교
논리 연산자
boolean a = true;
boolean b = false;
System.out.println(a && b); // false, 논리 AND 연산자
System.out.println(a || b); // true, 논리 OR 연산자
System.out.println(!a); // false, 논리 NOT 연산자
대입 연산자
int num = 10;
num += 5; // num은 이제 15 (num = num + 5)
num -= 3; // num은 이제 12 (num = num - 3)
num *= 2; // num은 이제 24 (num = num * 2)
num /= 4; // num은 이제 6 (num = num / 4)
num %= 5; // num은 이제 1 (num = num % 5)
조건문
int score = 85;
if (score >= 90) {
System.out.println("A 학점");
} else if (score >= 80) {
System.out.println("B 학점");
} else if (score >= 70) {
System.out.println("C 학점");
} else if (score >= 60) {
System.out.println("D 학점");
} else {
System.out.println("F 학점");
}
반복문
// for 반복문
for (int i = 0; i < 5; i++) {
System.out.println("For Loop: " + i);
}
// while 반복문
int j = 0;
while (j < 5) {
System.out.println("While Loop: " + j);
j++;
}
// do-while 반복문
int k = 0;
do {
System.out.println("Do-While Loop: " + k);
k++;
} while (k < 5);
느낀 점
나도 개발을 시작할 때 이렇게 어려워 했던가? 라는 생각과 함께 노베이스의 시각에서 눈을 맞춰볼 수 있어서 좋았다.
아주 흥미로운 점은, 당연하다고 생각 했던 것들에 대해서 왜? 라는 질문을 가지는 초심자의 순수함에서 되려 반성할 부분이 많았다는 것이다.
나도 물으며 살아 가야겠다. 왜?