관리 메뉴

사적공간

메서드 / 클래스 본문

KNOU_CS/JAVA

메서드 / 클래스

2sac 2024. 3. 21. 21:05

사용자 정의 함수 

/* 사용자 정의 함수 문법 
자료형 함수명(자료형 변수명, ...){
    명령어;
    return 반환값;
}
*/
public class Main {
static char fn(int num) { 
    if(num % 2 == 0) //짝수판별 사용자 정의 함수 
     return 'Y'; 
    else 
     return 'N';
} 
    public static void main(String[]args) {
        char a = fn(5); 
        System.out.print(a);
    }
}

N

 

 

static 매서드 : 클래스가 메모리에 올라갈 때, 자동으로 생성되는 매서드 

class sak  {
    static void print() { 
        System.out.println("static 매서드는 인스턴스 없이 사용가능!");
        }
}

public class sakMain { 
    public static void main(String[] args) {
        sak.print();
    }
}

 

static 매서드는 인스턴스 없이 사용가능!

 

 

클래스는 객체지향 프로그래밍에서 특정 객체를 생성하기 위해 변수와 매서드를 정의하는 틀이다. 

 

클래스 접근 제어자는 클래수, 변수, 매서드를 외부(같거나 다른 패키지)에서 접근할 수 있도록 권한을 설정하는 기능이다. 

 

클래스 접근 제어자 : 정보은닉을 위해 

public 외부 모든 클래스에서 접근이 가능한 접근 제어자 

protected 같은 패키지거내에 자신과 상속받은 하위클래스에서 접근 가능한 제어자 

default 접근제어자가 생략되어 있음. 같은 패키지 내부에서 접근 가능한 제어자 

private 같은 클래스 내에서만 접근 가능한 제어자 

 

 

자바 this 

public class sak { 
    private int a; 
    public void setA(int a){
        this.a = a; //this로 현재 클래스 내부의 변수를 가리킴 
    }
    
    public int getA(){   return a; }
    
    public static void main(String[] args) {
        sak soo = new sak(); // new 키워드로 soo 변수에 '인스턴스'==클래스명(파라미터)로 값을 넣음 
        soo.setA(5);
        System.out.print(soo.getA());
    }
}