JAVA - 03

Lumi·2021년 5월 29일
0
post-thumbnail

2021-05-29

17강 : 반복문

while, for, do while문 3가지가 있다.

18강 : do while 문

조건을 먼저 체크를 하지 않고 일단 실행을 한번 한뒤 조건을 체크한다.

19강 : for 문

무한반복,조건식, 증감식 생략등등 다양하게 사용 가능하다.

20강 : 반복문이 여러 번 포개진 중첩 반복문

21강 : break문, continue문

반복문에서는 주로 if문과 함께 사용 된다.(반복 수행을 멈추고 반복문 외부로 수행이 이동)
--> 반복문이 들어간 부분만을 빠져 나감

for 문에 아무것도 넣지 않고 ;만을 표기한다면 무한반복을 의미
--> if문을 통해서 종료 시점을 알려줘야함

continue를 통해서 3의 배수만을 출력 가능
-> if문의 의미는 3의 배수가 아닌경우 아래있는 출력을 무시하고 다시 for문을 반복해라
--> 아래 코드를 무시하라는 의미이다.

==============================================================================

여기 까지가 java나 다른 언어에서도 통할수 있는 기본적인 내용 다음부터는 객체지향 프로그래밍 입문에 대해서 학습할 예정

1강 : 객체와 객체지향 프로그래밍

2강 : 객체 찾아 클래스로 구현해보기

class의 이름과 java 파일의 이름은 동일 해야 한다.
-> java 파일 하나에 여러개의 클래스가 존재할수는 있음

객체 지향 프로그램을 짤떄에는
1. 객체를 정의
2. 각 개체의 속성을 멤버 변수로 역할을 메서드로 구현하고
3. 각 객체간의 협력을 구현한다.

3강 : 함수와 메서드

첫번쨰 사진 : 함수를 지정해 주는 방법
두번쨰 사진 : 지정한 함수를 실행하는 방법

void가 들어간 함수는 반환값(return)이 없을떄만 사용한다.

두번쨰 사진이 자동으로 실행되는 이유는 main이들어가있기 떄문에
--> main이 들어가면 따른 웹에서 발동한다는 의미가 아닌 프로그램 자체에서 발동한다는 의미

함수 호출과 스택 메모리

-> 함수 내에서 정의되는 변수를 지역 변수라고 한다.
--> 위 사진을 예로 들면 addNum 함수 안에있는 result, num1, num2 등등이 지역변수
---> 지역 변수는 그 함수 내에서만 사용되지 함수가 사용 된 후에는 사라지게 된다
== 이를 스택 메모리 라고도 한다.

메서드(method)

객체의 기능을 구현하기 위해 클래스 내부에 구현되는 함수
--> 구현을 하게 되면 그 객체가 해야하는 기능들을 담게 된다.

4강 : 객체의 속성은 멤버 변수로, 객체의 기능은 메서드로 구현한다.

강의 내용 : student라는 class에 변수의 이름과 함수를 지정해 놓고
다른 class에서 그 변수와 함수에 입력값을 주어서 출력하는 내용

student class (객체의 class)

student class 의 변수와 함수를 가져와서 이용하는 코드 (이용하는코드)

-> [참조 변수]

5강 : 인스턴스 생성과 힙 메모리

-- 4강의 사진을 참고 --

클래스는 객체의 속성을 정의하고 기능을 구현하여 만들어 놓은 코드 상태
실제 클래스 기반으로 생성된 객체를 인스턴스 라고 한다.
--> 인스턴스는 각각 다른 멤버 변수 값을 가지게 된다.
new 키워드를 사용하여 인스턴스 생성
EX :
Student studentKim = new Student();
Student studentLee = new Student();

이렇게 만들어진 인스턴스에 다양한 다른 값들이 저장되는것을 heap 메모리(동적 메모리) 라고 한다.
EX :
studentLee.studentID = 12345;
studentLee.studentName = "Lee";
studentLee.address = "서울 강남구";

6강 : 생성자에 대해서(NEW)

새로운 객체를 생성할떄에는 항상 생성자를 사용 해야한다.
--> 생성자는 heap메모리에 생성이 되게 된다.

생성자는 일반 함수처럼 기능을 호출하는 것이 아니고 객체를 생성하기 위해서만 사용됨
생성자는 반환 값이 없고, 클래스의 이름과 동일

직접 new 생성자를 사용할수 있는 class를 생성하는 코드

직접 생성자를 만들었을떄 생성자를 사용하는 함수

profile
[기술 블로그가 아닌 하루하루 기록용 블로그]

0개의 댓글