Java27 [Java] 타입 변환과 다형성 다형성사용 방법은 동일하지만 다양한 객체를 이용해서 다양한 실행결과가 나오도록 하는 성질이며, 다형성을 구현하려면 메소드 재정의와 타입 변환이 필요하다. 자동 타입 변환(promotion)자식은 부모 타입으로 자동 타입 변환이 가능하며, 자동 타입 변환은 프로그램 실행 도중에 자동적으로 타입 변환이 일어나는 것을 말함.자동 타입 변환의 개념은 자식은 부모의 특징과 기능을 상속받기 때문에 부모와 동일하게 취급될 수 있다는 것.바로 위의 부모가 아니더라도 상속 계층에서 상위 타입이라면 자동 타입 변환이 일어날 수 있음.// 자동 타입 변환package sec02.exam01; class A {} class B extends A{} class C extends A{} class.. 2025. 11. 12. [Java] 상속 상속이미 잘 개발된 클래스를 재사용해서 새로운 클래스를 만들기 때문에 중복되는 코드를 줄여주며, 상속을 이용하면 부모 클래스의 수정으로 모든 자식 클래스들도 수정되는 효과를 가져오기 때문에 유지 보수 시간을 최소화할 수도 있음. 클래스 상속// 기본 형식class 자식클래스 extends 부모클래스 {// 필드// 생성자// 메소드} 예제// 부모 클래스package sec01.exam01;public class People { public String name; public String ssn; public People(String name, String ssn) { this.name = name; this.ssn = ssn; }}// 자식 클래스package.. 2025. 11. 10. [Java] 패키지와 접근 제한자 패키지(package)클래스의 일부분으로, 클래스를 유일하게 만들어주는 식별자 역할을 함.클래스 이름이 동일하더라도 패키지가 다르면 다른 클래스로 인식한다. (상위패키지.하위패키지.클래스)* 프로젝트 할때 흔히 회사의 도메인 이름으로 패키지를 만들며 도메인 이름 역순으로 패키지 이름일 지어주는데, 포괄적인 이름이 상위 패키지가 되도록 하기 위해서이며, 마지막에는 프로젝트 이름을 붙여주는 것이 관례이다.ex) com.samsung.projectname // org.apache.projectname import문사용하고자 하는 클래스 또는 인터페이스가 다른 패키지에 소속되어 있다면, import문으로 해당 패키지의 클래스 또는 인터페이스를 가져와 사용할 것임을 컴파일러에게 알려줌.import문은 패키지 선언.. 2025. 11. 10. [Java] 인스턴스 멤버와 정적 멤버 인스턴스(Instance)멤버객체(인스턴스)를 생성한 후 사용할 수 있는 필드와 메소드를 말하는데, 이들을 각각 인스턴스 필드, 인스턴스 메소드라고 부름. 인스턴스 필드와 메소드는 객체에 소속된 멤버이기 때문에 객체 없이는 사용할 수 없음. thisthis는 주로 생성자와 메소드의 매개 변수 이름이 필드와 동일한 경우, 인스턴스 멤버인 필드임을 명시하고자 할 때 사용됨. // 인스턴스 멤버와 thispackage sec05.exam01;public class Car { // 필드 String model; int speed; // 생성자 Car(String model) { this.model = model; } // 메소드 void setSpeed.. 2025. 11. 10. [Java] 메소드 메소드는 객체의 동작에 해당하는 중괄호{ }를 말한다. 중괄호 블록 이름이 메소드 이름이며, 메소드를 중괄호 블록에 있는 모든 코드들이 일괄적으로 실행 됨. 메소드 선언은 선언부(리턴타입, 메소드이름, 매개 변수 선언)와 실행블록으로 구성됨.◉ 리턴타입: 메소트가 리턴하는 결과의 타입을 표시.◉ 메소드 이름: 메소드의 기능이 드러나도록 실별자 규칙에 맞게 이름을 지어준다.◉ 매개 변수 선언: 메소드를 실행할 때 필요한 데이터를 받기 위한 변수를 선언.◉ 메소드 실행 블록: 실행할 코드를 작성.// 메소드 선언package sec04.exam01;public class Calculator { // 메소드 void powerOn() { System.out.println("전원을 켭니다.".. 2025. 11. 9. [Java] 생성자 생성자(constructor)생성자는 new 연산자로 클래스로부터 객체를 생성할 때 호출되어 객체의 초기화를 담당.객체 초기화란 필드를 초기화하거나 메소드를 호출해서 객체를 사용할 준비를 하는 것을 말하며, 생성자를 실행하지 않고는 클래스로부터 객체를 만들 수 없음.new 연산자에 의해 생성자가 성공적으로 실행되면 힙(heap)영역에 객체가 생성되고 객체의 번지가 리턴되며, 리턴된 객체의 번지는 클래스 변수에 저장됨. 기본 생성자모든 클래스는 생성자가 반드시 존재하며, 생성자를 하나 이상 가질 수 있음. 객체를 다양한 값으로 초기화하기 위해서 클래스 내부에 생성자 선언을 생략했다면 기본 생성자가 자동으로 추가됨. 생성자 선언생성자는 메소드와 비슷한 모양을 가지고 있으나, 리턴 타입이 없고 클래스 이름과.. 2025. 11. 9. 이전 1 2 3 4 5 다음