JAVA공부하기 86

생성자메서드의 상속과 호출

 

상속된 서브 클래스에서 객체가 생성

- 슈퍼 클래스의 생성자가 먼저 수행

- 그 다음에 서브클래스의 생성자가 수행

 

자동으로 수행되는 슈퍼 클래스의 생성자는 묵시적 생성자

- 묵시적 생성자란 매개변수가 없는 생성자를 뜻함

 

오버로딩된 생성자를 호출하기 위해 "super"를 사용

- super의 사용 형식

* super(매개변수)

- 생성자 메서드는 상속되지 않음

 

생성자메서드의 상속과 호출 예제 1번

 

 

 

생성자 메서드의 상속과 호출 예제 2번

 

 

JAVA공부하기 85

변수 및 메서드의 접근제어

 

접근 지정자로의 접근 제어

 

상속 가능한 상위클래스 멤버

- public 또는 protected 접근 지정자로 선언된 변수와 메소드

- 같은 패키지 내의 상위클래스에 있는 접근 지정자가 생략되어있는 변수와 메소드 (default)

 

상속 불가능한 상위 클래스 멤버

- 상위클래스와 하위 클래스에 같은 이름의 변수나 메소드가 있는경우

- 메소드 이름이 같은 경우는 재정의

- private 접근 지정자로 선언된 변수와 메소드

 

 

 

// 서브 클래스의 변수와 슈퍼 클래스의 변수 이름이 같을 때

 

JAVA공부하기 67

JVM 메모리 모델

 

- main 메서드에서 sum 메서드를 호출할 때의 메모리 상태

: main 메서드에서 a,b매개변수를 이용하여 sum 메서드를 호출합니다.

 

- main 메서드에서 사용하는 a,b변수와 sum 메서드에서 사용하는 a,b매개변수의 이름은 같지만, 스택프레임 때문에 구분하여 상용

 

 

 

- sum 메서드에서 main 메서드로 리턴할 때의 메모리 상태

: sum 메서드의 수행이 끝나고 sum 메서드를 호출한 main 메서드로 되돌아 올 때, sum 메서드를 위해 할당했던 스택 프레임을 해제합니다.

: 이렇게 함으로써 main 메서드에서 정의한 a, b, c등과 같은 변수를 사용할 수 있도록 합니다.

 

 

 

 

자바공부하기 58

 

메서드를 이용한 접근제어

- public 메서드를 이용하여 private 멤버필드에 데이터를 전달한다.

 

- private 멤버필드에 값 전달하기

: 값 입력받기

* 외부로부터 데이터를 매개변수 형태로 받아서 내부의 멤버에 전달

 

: 값 전달하기

* 메서드의 리턴을 통해서 멤버필드에 전달

 

- getXXX() , setXXX()

 

Class Test6 {

private int top_secret;

public void setMyTop(int x){

top_secret = x;

}

public int getMyTop() {

return top_secret;

}

}

public class Test6Main {

public static void main(String[] args) {

int s;

Test6 t6 = new Test6() ;

t6.setMyTop(1000);

s = t6.getMyTop();

System.out.println("private멤버의 값은: " +s);

System.out.println("private멤버의 값은: " + t6.getMyTop());

}

}

 

 

public메서드를 통한 private메서드의 접근

다음글에선 private에 대해 알아볼꺼에요 ^^

JAVA공부하기 53

 

메서드_자판기

 

1번째

 

public class coffeelmain {

public static void main(String[] args) {

int myMoney = 800; // 800원은 커피 몇잔일까?

int cups = 0;  // 몇잔나올까 준비

if(myMoney > 0) {

cups = myMoney/200;  //커피 몇잔

} else if(myMoney==0){

cups=0;

} else {

cups=1;

}

if(cups>0) {

System.out.println("커피" +cups+"잔 입니다.");

} else {

System.out.println("액수가 모자랍니다.");

}

}

}

 

2번째

 

 

 

 

 

 

자바공부하기 52

메서드의 특징

 

1. 자신의 데이터 타입을 가진다.

 

2. 최종적으로 특정한 하나의 데이터값을 가진다.

 

3. 데이터값은 리턴값에 의해 결정된다.

- 리턴값과 메서드의 형은 반드시 일치해야함

- 리턴값이 없는 경우에는 메서드의 형을 void로 명시함

 

4. 필요한 경우 매개변수 형태로 특정값을 내부로 받을 수 있다.

- 간접 할당의 원칙 적용

- cf) 변수는 직접 할당의 원칙 적용

 

5. 메서드 내부에서 특정한 작업을 수행함

 

 

 

 

자바공부하기 51

 

메서드(Method)

 

: 메서드는 변수의 일종

- 반드시 선언 시에 데이터 타입을 지정해야 함

- 반드시 반환되는 하나의 값을 가짐

 

: 매개변수 형태로 특정 값을 받을 수 있음

: 일종의 작업이 명시돼 있음

: 모듈식의 구조적 작업을 하기 위함 

 

 

+ Recent posts