Java , Spring/Java21 [Java] Thread(쓰레드) 생성, 실행 Thread 생성방법 1. Thread class를 상속받아 run() 메서드 재정의 2. Runable interface를 구현( 추상메서드run() 구현 ) -> Thread 생성자로 Runable 객체 전달 Thread 실행 방법 Thread class의 start() 메서드 호출 주의 사항 재정의한 메서드는 run()이지만 실행은 start() 메서드를 통해 호출한다. Thread 객체는 재사용이 불가능하다. 생성방법 1. Thread class를 상속받아 run() 메서드 재정의 public class Thread1 extends Thread{ @Override public void run(){ String[] strArr = {"가","나","다","라","마"}; for(int i=0; i 2023. 5. 14. [Java] 추상클래스, 인터페이스(abstract class, ) 추상클래스(abstract class) 추상클래스란 하나 이상의 추상 메소드를 포함하는 클래스 추상메서드(abstract method) 메서드가 선언은 되어있지만 구현은 안되어있다. 자식 클래스에서 반드시 오버라이딩을 해야한다. (오버라이딩 - 메서드 이름, 매개변수 타입, 매개변수 개수가 동일) 자식 클래스에서 오버라이딩해서 직접 구현을 해야한다. abstract class Animal { abstract void cry(); } class Cat extends Animal{ @Override void cry() { System.out.println("야옹"); } } class Dog extends Animal{ @Override void cry() { System.out.println("멍멍"); .. 2023. 2. 3. [Java] 오버라이딩, 오버로딩 (Overriding, Overloading) Overriding(오버라이딩) 부모 클래스로부터 상속받은 메소드를 자식 클래스가 재정의 하는것. 자식 클래스에서 해당 메소드를 변경해서 사용하고싶을때 오버라이딩하는 부모 클래스의 메소드와 이름, 매개변수, 리턴값이 무조건 같아야한다. class Test { void print(){ System.out.println("print Test"); } } class Test2 extends Test{ @Override void print() { System.out.println("print Test 2"); } } Overloading(오버로딩) 메소드의 이름은 같지만, 매개변수의 타입이나 매개변수의 개수가 다른것. public class Test { void print(){ System.out.println.. 2023. 2. 3. 이전 1 2 3 다음