목록 Java (18)
이롭게 현명하게
[상속 개념] 상속 (Inheritance) : 부모가 자식에게 물려주는 행위. 즉 , 부모 클래스의 멤버를 자식 클래스에 물려줄 수 있다. 부모클래스 = 상위클래스 자식 클래스 = 하위 클래스 or 파생 클래스 상속은 이미 잘 개발된 클래스를 재사용해서 새로운 클래스를 만들어 코드의 중복을 줄여준다. 상속을 해도 부모 클래스의 모든 필드와 메소드를 물려받는 것은 아니다. 부모 클래스에서 private 접근 제한을 갖는 필드와 메소드는 상속 대상에서 제외된다. 부모 클래스와 자식 클래스가 다른 패키지에 존재한다면 default 접근 제한을 갖는 필드와 메서드도 상속 대상에서 제외된다. 클래스 수정을 최소화 할 수 있다. 중복된 코드를 줄일 수 있다. 유지보수 시간을 최소화시켜준다. 객체 다형성 구현 가능..
목차 접근 제한자 클래스의 접근 제한 생성자의 접근 제한 필드와 메소드의 접근 제한 접근 지정자의 종류 : private, protected, public, 디폴트(접근 지정자 생략) 클래스나 일부 멤버를 공개하여 다른 클래스에서 접근하도록 허용 객체 지향 언어의 캡슐화 정책은 멤버를 보호하는 것 접근 지정은 캡슐화에 묶인 보호를 일부 해제할 목적 public : 패키지에 관계없이 모든 클래스에게 접근 허용 private : 동일 클래스 내에만 접근 허용, 상속받은 서브 클래스에서 접근 불가 protected : 같은 패키지 내의 다른 모든 클래스에게 접근 허용, 상속받은 서브 클래스는 다른 패키지에 있어도 접근 가능 default : 같은 패키지 내의 다른 클래스에게 접근 허용 [접근 제한자] main..
this : 객체 자신에 대한 레퍼런스 인스턴스(instance) 멤버 : 객체(인스턴스)를 생성한 후 사용할 수 있는 필드와 메소드를 말한다. 인스턴스 필드, 인스턴스 메소드라고 부른다. 인스턴스 필드와 메소드는 객체에 소속된 멤버이기 때문에 객체 없이는 사용할 수 없다. // Car.java public class Car { // 필드 int gas; // 메소드 void setSpeed(int speed) { } } // Main.java public class Main { public static void main(String[] args) { Car mycar = new Car(); mycar.gas = 10; mycar.setSpeed(60); Car yourcar = new Car(); yo..
목차 메소드 선언 리턴타입 매개 변수 선언 매개변수의 수를 모를 경우 리턴(return) 문 메소드 오버로딩 메소드 (method) : 객체의 동작에 해당하는 중괄호 블록 리턴타입 메소드이름([매개변수선언, ...]){ 실행할 코드 } 메소드 오버로딩(Overloading) : 클래스 내에 같은 이름의 메소드를 여러 개 선언하는 것 class 클래스명{ 리턴타입 메소드이름 (타입변수){ 실행 내용 } 리턴타입 메소드이름(타입변수,타입변수){ 실행내용 } } 매개 변수 타입, 개수, 순서 중 하나가 달라야 한다. 매개값을 다양하게 받아 처리할 수 있도록 하기 위해 [메소드 선언] 메소드 (method) : 객체의 동작에 해당하는 중괄호 블록 메소드는 필드를읽고 수정하는 역할도 하지만 다른 객체를 생성해서 ..
목차 기본 생성자 생성자 선언 필드 초기화 생성자 오버로딩 다른 생성자 호출 public class ClassName{ //필드 : 객체의 데이터가 저장되는 곳 int fieldName; //생성자 : 객체 생성 시 초기화 역할 담당 ClassName(){ ... } //메소드 : 객체의 동작에 해당하는 실행 블록 void methodName() { ... } } [기본 생성자] 생성자 (Constructor) : new 연산자와 같이 사용되어 클래스로부터 객체를 생성할 때 호출되어 객체의 초기화를 담당한다. 객체 초기화 : 필드(클래스 멤버 변수)를 초기화하거나, 메서드를 호출해서 객체를 사용할 준비를 하는 것 생성자를 실행시키지 않고는 클래스로부터 객체를 만들 수 없다. new 연산자에 의해 생성자가..
public class ClassName{ //필드 : 객체의 데이터가 저장되는 곳 int fieldName; //생성자 : 객체 생성 시 초기화 역할 담당 ClassName(){ ... } //메소드 : 객체의 동작에 해당하는 실행 블록 void methodName() { ... } } [필드] 필드 (Field) : 객체의 고유 데이터, 객체가 가져야 할 부품, 객체의 현재 상태 데이터를 저장하는 곳, 클래스 멤버변수라고도한다. - 클래스 중괄호{} 블록 어디서든 존재할 수 있다. - 생성자 선언과 메소드 선언의 앞과 뒤 어떤 곳에서도 필드 선언이 가능. 메소드 중괄호 블록 내부에는 선언될 수 없다. - 생성자와 메소드 중괄호 블록 내부에 선언된 변수 : 로컬 변수 - 필드의 초기값은 필드 선언 시 ..