Java29 Java - 생성자 생성자 인스턴스를 생성할 때 사용함. 생성자는 메소드와 비슷하나 return 타입이 없음. 클래스 이름과 같아야함. 어떤 값을 가지고 인스턴스가 만들어지게 하고 싶다면 생성자를 사용함. 클래스 작성시, 생성자를 하나도 만들지 않았다면 자동으로 기본 생성자가 생성됨. 기본생성자는 매개변수를 하나도 받지 않는 생성자를 뜻함. 불변객체: 인스턴스가 만들어질 때 값을 넣어주고, getter 메소드만 가지고 있음, String class는 대표적인 불변객체, --> string이 가지고있는 모든 메소드는 string 내부의 값을 변화시키지 않음. 생성자 오버로딩 생성자는 매개변수의 개수가 다르거나, 타입이 다르다면 여러개를 가질 수 있음. 자신의 생성자를 호출 할 때는 this()를 사용함. this는 인스턴스 .. 2023. 3. 21. Java - 상속 상속? 객체지향에서 사용됨. 부모클래스와 자식클래스가 존재, 자식클래스는 부모클래스를 상속받는다. 일반화 시킨다 --> 자식클래스들을 부모클래스로 부를 수 있는 걸 말함. 상속 = 일반화 + 확장 결합도가 높은 관계는 상속임(객체와 객체간의 관계 중) --> 웬만하면 상속은 사용하지 말기. 상속 선언 방법: class 클래스명 extends 부모 클래스명{} 아무것도 상속받지 않으면 자동으로 java.lang.Object를 상속받음. 다형성 - 메소드 오버라이딩 상위 클래스(부모 클래스)의 메소드를 하위 클래스(자식 클래스)가 재정의 하는 것. 메소드 이름, 파라미터 갯수, 타입 등이 모두 동일해야함. 메소드가 오버라이딩 되면 무조건 자식의 메소드가 실행됨!! (참조 타입이 부모타입이다 하더라도 실제 동.. 2023. 3. 20. Java - 추상화, 다형성, 패키지 추상화? 중요한건 남기고, 불필요한건 제거하는 개념. 프로그램을 만들 때, 비지니스 영역(=도메인 영역)에 맞도록 추상화를 하는 것이 중요함. 캡슐화? 관련된 것을 잘 모아서 가지고 있는 것을 뜻함. 관련된 걸 잘 모아서 가질수 있도록 응집도가 높음. 객체는 응집도는 높고 결합도는 낮아야함!! 다형성과 오버로딩 다형성? 메소드 오버로딩? 메소드의 이름은 같지만, 받는 매개변수의 타입이 다른 경우를 뜻함. 다형성은 메소드를 같은 이름으로 사용하는것임. 패키지? 자바는 패키지를 이용해서 관련 있는 클래스를 관리함. 패키지는 폴더의 개념과 비슷함. 패키지 이름 규칙? 도메인 이름을 거꾸로 적은 후에 프로젝트 이름등을 붙여서 만듦. ex> com.exampe(도메인 거꾸로) + util(프로젝트명) 패키지 선언.. 2023. 3. 18. Java - method, field instance method static이 붙지 않은 method instance method는 instance가 생성되야지만 사용가능 class method static이 붙은 method class method는 instance가 생성되지 않아도 사용가능.(class명. ) class method에서는 인스턴스 필드, 인스턴스 메소드 사용불가. --> 메모리에 생성되는 시점이 다르기 때문에 즉, class method안에서는 class field만 사용가능함!!!!! field 클래스가 가지는 속성 static이 붙은 필드는 class field(클래스 변수라고도 부름) static이 붙지 않은 필드는 instance field 필드명은 소문자로 시작 static한 필드는 클래스명.필드명 형식으로 사.. 2023. 3. 18. 이전 1 ··· 4 5 6 7 8 다음