티스토리 뷰
method()
- 접근제한자 메모리영역 리턴타입 메서드이름(파라미터) { } //이러한 형태로 생성할 수 있다.
- parameter :
- arguments :
접근 제한자
public (+) : class외부 어디서든 참조 가능
protected (#) :
- 상속일 경우 : 상속된 곳에서 접근 가능
- 상속이 아닐 경우 : 같은 패키지 내에서 접근 가능
(default) (~) : 같은 패키지 내에서만 참조 가능
private (-) : 현재 클래스 내에서만 참조 가능
메모리 영역
static :
- Application이 실행되면 모두 메모리에 할당되고, Application 종료시 삭제 된다.
- 객체를 생성하지 않고 ( 클래스명.메서드명 ) 으로 호출
(non - static) :
- class 의 인스턴스를 생성할 때 메모리에 할당 된다.
- 객체를 생성하여 객체명.메서드명 으로 호출
실습 TEST
접근제한자와 메모리영역에 관한 코드를 테스트 해보기 위한 실습 환경 (클래스 구성도) 입니다.
Objectaid 다운로드 및 사용법은 다시 포스팅 하겠습니다.
package com.test01;
public class MethodTest01 {
//Method : 기능 (명령문들의 집합)
public static void main(String[] args) {
//class.method() : 형태로 호출
MethodTest01.publicMethod();
MethodTest01.protectedMethod();
defaultMethod();
privateMethod();
}
//접근제한자 메모리영역 리턴타입 메소드이름(파라미터){
// 블록 = 바디
//}
//public (+) : 어디서나 접근, 참조 가능
public static void publicMethod() {
System.out.print("접근제한자 1. ");
System.out.println("public");
}
//protected (#)
//상속일 경우 : 상속된 곳에서
//상속이 아닐 경우 : 같은 패키지 내에서
protected static void protectedMethod() {
System.out.println("접근제한자 2. protected");
}
//(default) (~) : 같은 패키지 내에서만
static void defaultMethod() {
String str = "default";
System.out.printf("접근제한자 3. %s \n", str);
}
//private (-) : 현재 클래스 내에서만
private static void privateMethod() {
System.out.println("접근제한자 4. private");
}
public void nonStaticMethod() {
System.out.println("non static method!");
}
}
package com.test01;
public class MethodTest02 {
public static void main(String[] args) {
//메모리 영역 : static / (non-static)
//static : class.method();
MethodTest01.publicMethod();
MethodTest01.protectedMethod();
MethodTest01.defaultMethod();
//MethodTest01.privateMethod(); //private메서드는 not visible
//MethodTest01.abc(); //선언되지 않은 메서드는 undefined
//(non-static)
//class 변수 = new class();
//변수.method();
MethodTest01 methodtest01 = new MethodTest01();
methodtest01.nonStaticMethod();
//MethodTest01.nonStaticMethod();
}
}
package com.test02;
import com.test01.MethodTest01;
public class MethodTest03 {
public static void main(String[] args) {
MethodTest01.publicMethod();
//MethodTest01.protectedMethod();
//MethodTest01.defaultMethod();
//MethodTest01.privateMethod();
MethodTest01 methodtest01 = new MethodTest01();
methodtest01.nonStaticMethod();
}
}
'JAVA > JAVA Theory' 카테고리의 다른 글
[JAVA] 6. [제어문][조건문] if문 (0) | 2019.11.13 |
---|---|
[JAVA] 5. 연산자 (Operator) (0) | 2019.11.13 |
[JAVA] 3. Java의 변수, 변수의 타입 (0) | 2019.11.13 |
[JAVA] 2. Java SE, ME, EE 차이점? (0) | 2019.11.13 |
[JAVA] 1. Java 설치, 환경변수 설정, cmd 실행 test (0) | 2019.11.13 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 상속
- 다형성
- OOP
- Update
- JDBC 프로그램 작성단계
- INSERT
- java 환경설정
- 추상화
- jdbc
- java
- 객체지향
- .
- 객체
- ojdbc6.jar
- view
- JdbcTemplate
- Oracle
- model
- 캡슐화
- controller
- select
- MVC
- Delete
- Scott/Tiger
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함