자바는 객체지향프로그래밍 언어다.
클래스 : 한 종류의 객체를 여러 개 만들어 줄 틀
이름 나이
김땡땡 20
최땡땡 31
박떙떙 29
package day01;
class 클래스이름 {main선언하고}
Student lyj;
lyj = new Student();
lyj.age = 27;
lyj.name = "임연진";
lyj.major = true;
class Student {
String name;
Integer age;
Boolean major;}
문자 = String
숫자 = Integer
논리형 = Boolean = true or false;
변수 = 무언가를 저장할 때 사용
객체안에 객체안에 객체안에 객체... 있을수있음
백엔드 개발자의 목표
: 웹사이트를 만들어서 사용자 또는 게시글 데이터를 DB에 CRUD
ORM : Object Relational Mapping
ex.
학생 표(다
이름 이름을 바꾼다
나이 나이를 먹는다
성별
주소
x 수강과목(단일책임의 원칙에 어긋나서 학생에 들어가면 안됨)
수강 표(다 대 다 관계에서 하나씩 가져오는것임)
과목이름
학생이름
수업 표(대 다)
시간
과목이름
IP주소 : 멀리있는 컴퓨터를 찾아가는 주소
포트번호 : 프로그램을 찾아가는 주소
서버 : 서비스를 제공하는 프로그램
클라이언트 : 서버가 제공하는 서비스를 이용하는 프로그램
명령어 : 실행 프로그램
연산자(+,-,<,>,=,&&,||)
논리 연산자 - &&(곱셈 같은애) ||(덧셈 같은애}
< 번역규칙 >
자바
클래스 (class 클래스이름 { 변수; 메소드(); })
객체 생성(new 클래스이름();)
~를 생성한다.
변수(클래스이름 변수이름;)
~를 저장한다.
연산자(+,-,<,>,=,&&,||)
~를 ~와 더한다. 뺸다. 곱한다. 비교한다.
출력(System.out.println(변수);)
조건문(if(조건식) { 조건이 참일 때 실행할 코드})
만약에 ~하면 ~한다
-> 무조건 if() {} 부터 적기!
조건문(if(조건식) { } else { })
만약에 ~하면 ~하고 그렇지않으면 ~한다.
// 만약에 num1이 num2보다 작으면
// 작다고 출력한다.
// 그렇지 않고 만약에 num1이 num2보다 크면
// "크다"고 출력한다.
// 그렇지 않으면
// "같다"고 출력한다.
if(num1 < num2) {
System.out.println("작다");
}
else if{num1 > num2) {
System.out.println("크다");
} else{
System.out.println("같다");
}
}
반복문 (~동안 ~을 반복한다)
만약에 조건이 참이면 조건이 거짓이 될때까지 다음을 반복한다.
반복한 코드를 실행
조건을 변경시키는 코드를 실행(조건이 거짓이 되면 더이상 반복하지 않음)
while(조건){
반복할 코드
조건을 변경시키는 코드
}
for(Integer i=0; i<10; i = i + 1) {
System.out.println("반복할 코드");
}
break가 실행되면 즉시 반복문 종료
continue가 실행되면 바로 다음차례 반복문 실행(반복문 종료되는게아님)
배열 만드는 법
클래스이름[] 변수이름 = new 클래스이름[크기];
배열의 값 사용
변수이름[순서번호]; //순서번호는 0번부터
package day01;
public class ForWhilePractice {
public static void main(String[] args) {
Integer num1;
num1 = 10;
// 만약에 num1이 5보다 크면
// "크다"를 출력
// num1에 1을 빼고 결과를 num1에 저장한다.
// 반복한다.
while(num1 > 5){
System.out.println("크다");
// 조건을 변경시키는 코드
num1 = num1 - 1;
}
// i가 0부터 i를 1씩 증가시키면서 10보다 작으면
// 반복할 코드를 반복한다.
for(Integer i=0; i<10; i = i + 1) {
System.out.println("반복할 코드");
}
}
변수
배열 : 똑같은 타입의 값을 하나의 변수에 저장
구조체 : 서로 다른 타입의 값 여러 개를 하나의 변수에 저장
클래스 : 서로 다른 타입의 값 여러 개와 메소드를 하나의 변수에 저장
!!!문법 중요!!!
< 변수 만드는 법 >
클래스이름 변수이름;
숫자 저장하는클래스 Integer
글자 저장하는클래스 String
< 클래스 만드는 법 >
class 클래스이름(
)
< 조건문 >
if(조건) {
조건이 참일 때 실행할 코드
}
< 조건문2 >
if조건 (
조건이 참일 때 실행할 코드1
) else (
조건이 거짓일때
)
-> 만약에 조건이 참이면 코드1실행,
< 반복문1 >
while(조건)(
반복할코드
조건을 변경할 코드
)
< 반복문2 >
for(Integer i=0; i<10; i = i + 1){
반복할 코드
}
< 반복문3 >
break가 실행되면 즉시 반복문 종료
continue가 실행되면 바로 다음차례 반복문 실행
< 배열 만드는 법>
클래스이름[] 변수이름 = new 클래스이름[크기];
배열의 값 사용
변수이름[순서번호]; //순서번호는 0번부터
// 랜덤
다음은 0부터 99까지 숫자 중 하나를 랜덤하게 생성해서 num에 저장하는 코드이다.
Integer num = (int)(Math.random()*100);
// 입력받기 위한 스캐너 만들기
Scanner sc = new Scanner(System.in);