[Java1] 클래스, 인스턴스와 상속

DEINGVELOP·2022년 8월 7일
0

Java1

목록 보기
7/7

Class와 Package

  • Class : 변수(variable)와 메소드(method)를 모아서 이름 붙인 것. 메소드들을 그룹핑한 것

  • Package : 서로 연관된 비슷한 성격의 class를 모아서 이름을 붙인 것. 클래스들의 충돌을 해결하기 위한 정리


Class의 활용

Public class ClassApp {
	public static void main(String[] args){
    	System.out.println(Math.PI);
        System.out.println(Math.floor(1.6));
        Systme.out.println(Math.ceil(1.6));
	}
}

Instance

  • 클래스(Class) : 한 객체의 설계도. 객체를 코드로 구현한 것

  • 인스턴스(Instance) : 출시된 완제품. 클래스의 설계를 바탕으로, 메모리에 구현한 상태. 이 인스턴스를 객체라고 한다.

  • 생성자 (Constructor) : 생성자는 new 연산자를 통해서 인스턴스를 생성할 때, 반드시 호출이 되고 제일 먼저 실행되는 일종의 메소드
    - 생성자는 인스턴스 변수(필드 값 등)를 초기화 시키는 역할을 한다.


Instance 활용하기

import java.io.PrintWriter;
public class InstanceApp{
	public static void main(String[] args) {
    	printWriter p1 = new printWriter("result1.txt");
        
  • PrintWriter() : 한 클래스. 뒤의 괄호에 저장하고 싶은 파일명을 입력

  • p1 : 변수이자, PrintWriter 클래스의 인스턴스. 타입을 제한하기 위해 앞에도 클래스명을 붙여줌

  • new PrintWriter의 빨간 줄 → 예외 처리를 안해서 나오는 현상. 예외처리는 나중에 배울 것이므로, 오늘은 빨간 줄 나온 부분을 선택하여 dd throws decalarationIOException 선택

import java.io.PrintWriter;
public class InstanceApp{
	public static void main(String[] args) throws IOException{
    	printWriter p1 = new printWriter("result1.txt");
        p1.write("Hello 1");
        p1.close();
        
        printWriter p2 = new printWriter("result2.txt");
        p1.write("Hello 2");
        p1.close();
	}    
}    

Inheritance (상속)

  • 변수를 그대로 물려받으면서 필요한 메소드, 변수가 추가되는 것

  • Object : Java의 가장 기본 클래스. 모든 클래스는 Object 클래스를 필수로 상속받음

  • oveerride : 하위 클래스가 상위 클래스의 메소드를 덮어씌우기도 가능.

  • 클래스를 상속받아 나만의 클래스를 만드는 것도 가능!


이 상속 관계는 공식 문서의 trees에서 확인 가능하다.

0개의 댓글