목록JAVA/배운 후 (28)
개발 공부
오버로딩- 리턴 타입 함수명은 같으나 /파라미터만 다른것 들어가는 매개변수는 다르고 리턴값 같다. 오버라이딩-자식클래스에서 다시 만들어서 쓰는것 동적 바인딩 =재 정의된 메서드를 먼저 부른다는 규칙 ※필드는 오버라이딩 되어도 필드는 부모타입을 따라감 ※메소드는 오버라이딩 되면 자식의 메소드 실행 ex) 클래스 1 public class Parent { public int i = 5; public void printI(){ System.out.println("parent = printI() :" +i); } } 클래스 2 (상속) public class Child extends Parent { public int i = 15; // parent 필드에 대한 오버라이딩 public void printI(){..

java의 jvm 이 관리하는 메모리 공간은 크게 3가지 영역으로 나눌 수 있다. 스태틱 영역 스택영역 힙 영역 data 스태틱 스택 힙 code 스태틱 필드를 선언 할 때 static이 붙게 되면 data세그먼트 메소드 영역=스태틱(static)- 정적메모리 static이 붙은 필드선언시 스택- ()메소드 내 지역변수 , 파라미터(매개변수) 힙-인스턴스화 하는 객체 new연산자로 만든 객체나 배열 예외)가비지컬렉터- 사용이 끝난 객체의 메모리 해제 code세그먼트 스태틱(static)- 바이트 코드
class 접근제어자 반환타입 메소드명 파라미터 static final public int myFunction (int x){ return x +5; (메소드의 기능 실행문 )로직 } 접근제어자 private-해당 클래스 내에서만 사용가능 하다. public- 어느 클래스에서든 접근 가능한 메소드 반환타입 생략가능 하지만 void 키워드 사용 자료형 파라미터 생략가능 () 메소드와 함수의 구분 class 내 위치하는지 안하는지 main메소드 무조건 프로그램이 실행되기 위해 main 메소드가 필요하다
클래스 static 붙어있는 필드를 클래스 필드 붙지 않은 필드를 인스턴스 필드라고 한다. 메소드 인스턴스 메소드 public void printName(){ System.out.println("내 이름은 " + name); } 클래스 메소드 public static void printCount(){ System.out.println("count : " + count); }
필드 Person참고 클래스가 가지는 속성 다른언어에서는 멤버변수 필드는 어떤 키워드와 함게 사용하는냐에 따라서 사용방법이 달라진다. static이라는 키워드가 함께 사용되는 필드는 클래스 필드 함께사용되지 않는 필드는 인스턴스 필드 필드 선언 형태 타입+필드 [=초기값]; 유저 클래스 public class Person { String name; String address; boolean isvip; } static 필드는 class 변수라고도 한다.