컴퓨터 공부/JAVA13 2022-09-07 추상클래스와 인터페이스 추상 추상: 실체 간에 공통되는 특성을 추출한 것. 클래스에서도 추상 클래스가 존재하는데 클래스들의 공통적인 특성을 추출해서 선언한 클래스를 추상클래스라고 한다. 추상 클래스가 부모이고 실체 클래스가 자식으로 구현되면 실체 클래스는 추상 클래스의 모든 특성을 물려받고, 추가적인 특성(필드, 메소드)을 가질 수 있다. 추상 클래스 선언 추상 클래스를 선언할 때에는 클래스 선언에 abstract 키워드를 붙여야한다. abstract를 붙이게 되면 new연산자를 이용해서 객체를 만들지 못하고 상속을 통해 자식 클래스만 만들 수 있다. public abstract class Phone{ //필드 public String owner; //생성자 public Phone(String owner){ this.owner.. 2022. 9. 7. 2022-09-06 상속 상속 일반적으로 상속은 부모가 자식에게 재산을 물려주는 것을 뜻한다. 이와 유사하게 자바의 프로그래밍에서도 상속이 쓰이는데 부모클래스의 필드,메소드를 자식 클래스에게 물려주는 것이다. public class A{ String str="안녕하세요"; String str2="안녕못합니다"; void hello(){ System.out.println("부모 A의 인사"); } } //이를 class B가 물려 받을 경우, extend를 사용하면 된다. public class B extends A{ } public class Main { public static void main(String[] args) { B b = new B(); b.hello(); System.out.println(b.str2) } } .. 2022. 9. 6. 2022-09-05 객체 기초 1. 객체 객체란 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중 자신의 속성을 가지고 있고 다른 것과 식별 가능한 것을 말한다. 객체는 속성과 동작으로 구성되어있다. 예를 들어 현실세계의 사람은 이름과 나이라는 '속성'과 웃다,먹다라는 '동작'을 가지고있다. 2. 클래스 클래스는 객체를 찍어내기 위한 틀과 같다. 우리가 만들고자 하는 객체가 집이라면, 클래스는 집을 짓는 설계도와 같은 것이다. 일반적으로 이런 형태를 취하고 있다. public class 클래스 { } 3. 필드 필드는 객체의 고유데이터, 상태 등을 저장하는 곳이다. 자동차 객체를 예로 들어보자, 하단의 코드내에 있는 제조회사, 색상, 속도와 같은 정보들이 필드로 선언되어있다. public class Car{ String comp.. 2022. 9. 5. multi-thread 동기화(synchronization) critical section(임계영역) - 두 개 이상의 thread가 동시에 접근하게 되는 리소스 ciritical section에 동시에 thread가 접근하지 않게 하기 위해 동기화(synchronization) 필요 동기화(synchronization) - 임계영역에서 한 thread가 작업 수행중인 경우 lock을 걸어서 다른 thread의 접근을 막음. 주의) deadlock에 빠질 수 있음 (synchronized 메서드 내에서 다른 synchronized 메서드 호출하지 않기) 동기화(synchronization) 구현 - synchronized 메서드가 속한 객체에서 lock을 건다 2021. 9. 13. 이전 1 2 3 4 다음