23.11.29 - java (day08) 문법처음부터다시!

임연진·2023년 11월 29일

11월 29일 - 자바문법 기초부터 다시!

basicbasic day08

< 변수 만드는 법 >
클래스이름 변수이름;
ex) Integer score;

< 변수 사용하는 법 >
// 출력문이나 연산식 내부에 변수 이름을 대입하여 사용
변수이름만 쓰기

< 변수에 저장하는 법 >
클래스이름 변수이름 = 값;
ex) Integer score = 90;

< 클래스 만드는 법 >
class 클래스이름(
)

숫자 저장하는클래스 Integer
글자 저장하는클래스 String

< 메소드 만드는 법 >
class 클래스이름{
반환클래스이름 메소드이름 (매개변수클래스이름 매개변수이름) {
return 반환값;
}
}
ex) class Calc {
Integer sum (Integer x) {
return x + 10;
}
}

void = 리턴값이 없음, 메소드가 어떤 작업을 수행하긴 하지만 그 결과값을 반환하지 않는 경우에 사용

< 클래스로 객체 생성하는 법 >
new 클래스이름();

< 객체에 있는 메소드 사용하는 법 >
1. 객체참조변수이름.메소드이름(); // 매개변수가 없는 메소드의 호출
2. 객체참조변수이름.메소드이름(인수1, 인수2, ...); // 매개변수가 있는 메소드의 호출

< 객체에 있는 변수 사용하는 법 >
객체가 저장된 변수이름 다음 . 찍고 객체 안에 있는 변수이름 또는 메소드이름

< 생성자 만드는법 > Alt + Insert
class 클래스이름 { 클래스이름 ( ){ } }

생성자 만드는 법(메소드와 비슷한 모양)
클래스(매개변수 선언, ...){ }
ex) Car(String color, int cc){ }

< 생성자 사용하는 법 >
객체 생성할 때랑 같음
new 클래스이름();

다른 클래스에 생성자를 선언한 클래스이름으로 객체를 생성하기
ex) Car mycar = new Car("검정", 3000);

< 조건문 >
if(조건) {
조건이 참일 때 실행할 코드
}
ex) if(num1 < num2) {
System.out.println("작다");
}

< 조건문2 >
if(조건) {
조건이 참일 때 실행할 코드
} else if(조건) {
조건이 거짓일때 실행할 코드
}

ex) if(num1 < num2) {
System.out.println("작다");
}
else if(num1 > num2){
System.out.println("크다");
} else {
System.out.println("같다");

< 반복문1 >
while(비교/논리 연산자 조건){
반복할 코드
조건을 변경시키는 코드
}
ex) while(num1 > 5){
System.out.println("크다");
num1 = num1 - 1;
}

< 반복문2 >
for(초기화식; 조건식; 증감식){
조건이 true일 경우 반복할코드
}

ex) for(Int i=0; i<10; i++){
num = num + i;
}

< 반복문3 >
break;가 실행되면 즉시 반복문 종료

continue;가 실행되면 바로 다음차례 반복문 실행

< 배열 만드는 법>
클래스이름[] 변수이름 = new 클래스이름[크기];

< 배열의 값 사용 >
변수이름[순서번호]; //순서번호는 0번부터

< 입력하는 법 >
Scanner scanner = new scanner(System.in);

< 출력하는 법 >
System.out.println("출력 내용") - 개행해서 출력
System.out.print(); - 개행 하지 않고 출력

< 예외 처리 >
try catch - 예외가 발생하는 곳을 try로 묶음
throws - main한테 문제를 던짐, 여러개의 exception을 적을 수 있다

try{
예외발생가능코드
} catch(예외클래스 e) {
예외처리
} finally {
항상실행;
}

< 예외 떠넘기기 >
리턴타입 메소드이름(매개변수) throws Exception {
}

< 오버로딩 > //새로운 메소드를 정의하는 것
하나의 클래스에서 같은 메소드를 만드는 것

< 상속 >
class 자식클래스 extends 부모클래스{}

< 오버라이딩 > // 상속받은 기존의 메소드를 재정의하는 것, 자식클래스에서 사용
ctrl + o
부모가 상속해준 메소드를 내가 바꿔서 사용
두개의 클래스에서 같은 메소드를 만드는 것
자식이 부모의 메소드를 덮어쓴다

< 접근제어자 >
// 클래스 만들때 앞, 메소드 만들때 앞, 변수 만들때 앞에 써주는것
// 아무나 클래스, 메소드, 변수를 사용할 수 없게 접근제한하는것
public  >  protected  >  default(생략)  >  private
public : 모든 클래스에서 접근 가능(패키지와 상관없음)
private : 같은 클래스안에서만 접근 가능
protected : 같은 패키지안의 모든 클래스와, 다른 패키지의 자식 클래스에서 접근 가능(상속까지 가능)
default : 접근지정자가 없으면(아무것도 안붙어있으면) default로, 같은 패키지안의 클래스에서만 접근 가능(같은 패키지까지 가능)


변수 만 딸랑 적혀있으면 변수사용!

.찍으면 사용하겠다~
변수 = 객체를저장하고있는 변수.메소드

                         (대문자로되어있는게 클래스)

객체 생성안하고 클래스.메소드 바로 썼으면 메소드앞에 static이 붙어있는거다~

-> static 키워드를 붙이면 객체 생성 없이도 메서드나 변수를 사용할 수 있다

** 변수(객체가저장되어잇음).method() -> 메소드사용 -> 반환하겠다
객체를저장하고있는변수.a -> a뒤에 괄호가 없으므로 변수사용하는거임

this 는 자기자신

변수에는 객체가저장되어있다


JDBC : 자바코드로 DB에 CRUD하는 것

JSP 서블릿 = 자바코드로 클라이언트요청을 받아서웹페이지를 만들어주는 기능

프론트엔드
웹 서버 : 클라이언트가 요청한 파일을 다운로드할 수 있게 해주는 서비스를 제공하는 프로그램
파일 = 서버에 저장되어있는 파일 그대로

백엔드
웹 어플리케이션 서버 : 클라이언트가 요청한 파일을 다운로드할 수 있게 해주는 서비스를 제공하는 프로그램
파일 = 서버에 저장되어있는 파일 그대로 x

0개의 댓글