0905

호두·2022년 9월 5일
0

공부

목록 보기
16/25

pakage 패키지명;
import 패키지명 or 클래스명;
또다른 클래스; // 자바는 클래스로만 이루어져 완벽한 객체지향 언어

접근제한자 지정예약어 class 클래스명 extends 상위클래스 implements 상위인터페이스 {
멤버필드
멤버메소드
생성자
중첩클래스
}

1. 멤버필드와 멤버메소드

  • 접근제한자 지정예약어 반환형 메소드명(매개변수...){
    return 반환값; //반환형 = 미리 지정해야하는 반환값의 자료형, 반환값은 y=x+3에서 y / 매개변수 = x / {} 내용물은 +3
    }
  • 반환형의 종류
    void: '반환할 값이 없습니다'라고 알려주는 반환형
    기본자료형
    class
// 반환형이 없고, 매개변수도 없는 메소드
	public static void intro() {
		System.out.println("두개의 수를 입력하면
        그 합을 알려주는 프로그램");
	}
//반환형은 있고, 매개변수가 없는 메소드
	public static int input() { // 메소드, 반환형은 int
		Scanner in = new Scanner(System.in);
		System.out.print("수를 입력: ");
		int su = in.nextInt();
		return su;
        }
// 반환형은 없고, 매개변수는 있는 메소드
	public static void output(int a, int b, int c) {
		System.out.printf("%d + %d = %d\n", a, b, c);
	}
//반환형이 있고, 매개변수도 있는 메소드
	public static int hap(int a, int b) { // int a, int b가 매개변수
		return a + b;
		
	}
  • 메소드의 오버로드: 메소드명이 같고, 매개변수가 다른(자료형, 갯수, 위치) 메소드의 집합. (day 07 Exam_02.java)
  • 메소드의 재귀호출

2. 생성자

  • ☆클래스 이름과 똑같은 메소드
  • ☆반환형이 없다.
  • ☆객체 멤버필드의 초기값을 정의하기 위해 만들었다.
  • 정의하지 않으면, JVM이 알아서 default 생성자를 만들어준다.
    (생성자가 하나라도 정의되어 있으면 default 생성자는 안 만들어진다)
  • 호출해서 사용 불가!!(오로지 객체를 생성할 때만 사용 가능)
  • 메소드라서 오버로딩이 가능하다.

객체지향언어의 4가지 특성
1. 은닉화
2. 상속성
3. 다형성
4. 추상화


변수 -> 배열 -> 클래스(사용자정의자료형,구조체 단계 생략)

기본자료형(int, boolean...), 클래스자료형(helloJava, String...)

클래스 안의 선언부: 멤버필드 - 새로운 자료형을 만들 때 필요한 변수를 선언
클래스 안의 기능부: 멤버메소드

profile
web developer

0개의 댓글