Call by value
- 값에 의한 전달
- 서브프로그램의 결과가 메인 프로그램에 영향을 주지 않습니다.
- 대체적으로 return이 필요하지 않습니다.
Ball by reference
- 값을 전달하는데 주소를 사용
- 서브프로그램의 결과가 메인 프로그램에 영향을 줍니다.
- 대체적으로 return이 필요합니다
메서드 구성 요소
- 접근제어자: public, protected, private, default
- public: 외부패키지, 내부패키지, 둘다 모두 접근 가능 -> 정보은닉[x]
- deflault: 자기자긴의 클래스이거나 자신의 패키지에 속하는 것이면 모두 접근 가능
- protected: 외부와 내부 패키지가 서로 상속관계에 있을 때 접근이 가능
- private: 오로지 자기자긴만의 클래스에서만 접근 가능
- static: 클래스 변수이면서, 메인 메소드 영역과 필드 영역과의 데이터를 공유.
외부 패키지와 내부 패키지와의 데이터 공유도 가능 - return(반환값): int. float, double, String, Class. void
- 메서드명: 메서드 이름
- 매개변수: parameter
- 상속(Inheritance)
- 부모 클래스로부터 자식 클래스에게 상속되어지는 것
(parent) (child) - 속성과 기능(동작, 행위)
클래스변수 클래스메소드 - 접근제한자가 같은 패키지라면 생략이 가능하나, 다른 패키지라면 반드시 public을 해주어야 한다.
- 자바는 단일 상속만을 허용한다.
- 종류
- public class A extands B { .... };
//같은 클래스들 끼리 상속이 될 때 - public class A implements B(, C, D, ...) { .... };
//B라는 인터페이스가 A라는 클래스에게 상속
//다중상속이 아닌 B, C, D 처럼 상속받을 수 밖에 없는 이유: 인터페이스는 객체를 생성하지 못하기 때문 (다중상속의 효과를 낸다) - public abstract class A extands B { .... }
//객체를 생성하지 못한다. - public class A extends B implements C, D, E { .... };
//C, D, E 가 B를 상속 , A가 C, D, E를 상속한 B를 상속 - public interface A extends B { .... };
- public class A extands B { .... };
- 부모 클래스로부터 자식 클래스에게 상속되어지는 것
A extends B
package lecture0524;
/*이름과 나이를 입력하여 출력하는 프로그램을 작성
* 조건 : 부모클래스: Age, Age의 역할: 나이를 입력받아서 반환하는 클래스
* 자식클래스: Question4, 이름을 입력받아서, 이름과 나이를 출력
* <상속을 이용하여 문제를 풀어라!!!>*/
import java.util.Scanner;
class Age {
public static int age() {
Scanner sc = new Scanner(System.in);
System.out.println("나이를 입력하세요.");
int age = sc.nextInt();
return age;
}
}
public class Question4 extends Age{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("이름을 입력하세요.");
String name = sc.next();
// Age a = new Age();
int old = age();
System.out.println(name + "님의 나이는 " + old + "살 입니다.");
}
}
'🤓천재교육 풀스택 1기 노트' 카테고리의 다른 글
천재교육 풀스택 과정 1기 Day13 (0) | 2023.05.26 |
---|---|
천재교육 풀스택 과정 1기 Day12 (0) | 2023.05.25 |
천재교육 풀스택 과정 1기 Day10 (0) | 2023.05.23 |
천재교육 풀스택 과정 1기 Day9 (0) | 2023.05.22 |
천재교육 풀스택 과정 1기 Day8 (0) | 2023.05.19 |