전체보기

QUICK DBD 리뷰 및 사용후기
나는 기존의 ERD를 작성할 때 PPT 및 인터넷에 돌아다니는 무료 툴을 사용했다. 다음과 같은 ERD( Entity Relationship Diagram)를 그리기에는 각각의 row에 대한 정보를 직관적으로 확인하기 어려우며 외래키에 대한 표시를 할 방법이 존재하지 않다. 아래의 관계도 표시를 보면 다양한 것이 있는데 이를 ppt에 적용하기는 한계가 존재한다. ppt로 작성하게 되면 매우 힘든 부분이 관계도를 표현하기이다. 각각의 관계는 위와같이 제한에 대한 표현을 해줘야한다. 따라서 번거로움은 제한된 한슬라이드에서 규모가 커진다면 공간이 부족해지며 가장 중요한 직관적이지 못한다는 것이다. 따라서 여러가지 툴을 찾아보던 중 draw.io와 diagrams.net를 찾았으나 diagrams.net은 피피..
[JAVA] 다형성(polymorphism)
다형성 여러 가지 형태를 가질 수 있는 능력, 조상클래스 타입의 참조변수로 자손클래스의 인스턴스를 참조할 수 있도록 한다. CaptionTv c = new CaptionTv(); Tv t = new CatptionTv(); 참조변수 t로는 CaptionTv인스턴스의 모든 멤버를 사용할 수 없다. Tv타입의 참조변수로는 CaptionTv인스턴스 중에서 Tv클래스의 멤버들만 사용할 수 있다. 조상타입의 참조변수로 자손타입의 인스턴스를 참조할 수 있다. 반대로 자손타입의 참조변수로 조상타입의 인스턴스를 참조할 수는 없다. 참조변수의 형변환 기본형 변수와 같이 참조변수도 형변환이 가능하다. 단, 서로 상속관계에 있는 클래스 사이에서만 가능하기 때문에 자손타입의 참조변수를 조상타입의 참조변수로, 조상타입의 참조변..
[JAVA] 제어자(modifier)
제어자 제어자는 클래스, 변수 또는 메서드의 선언부에 함께 사용되어 부가적인 의미를 부여한다. 접근 제어자 public, protected, default, private 그 외 static, final, native, transient, synchronized, volatile, strictfp static - 클래스의, 공통적인 인스턴스변수는 하나의 클래스로부터 생성되었더라도 각기 다른 값을 유지하지만, 클래스변수(static멤버변수)는 인스턴스에 관계없이 같은 값을 갖는다. 하나의 변수를 모든 인스턴스가 공유하기 때문이다. static이 사용될 수 있는 곳 - 멤버변수, 메서드, 초기화 블럭 static 멤버변수 모든 인스턴스에 공통적으로 사용되는 클래스변수가 된다. 클래스변수는 인스턴스를 생성하지..
[JAVA] package와 import
패키지(package) 패키지란, 클래스의 묶음이다. 클래스가 물리적으로 하나의 클래스파일(.class)인 것과 같이 패키지는 물리적으로 하나의 디렉토리이다. 하나의 소스파일에는 첫번째 문장으로 단 한 번의 패키지 선언만을 허용한다. 모든 클래스는 반드시 하나의 패키지에 속해야한다. 패키지는 점(.)을 구분자로 하여 계층구조로 구성할 수 있다. 패키지는 물리적으로 클래스 파일(.class)을 포함하는 하나의 디렉토리이다. 패키지의 선언 package 패키지명; 소스파일의 맨 위에 적어준다. 패키지명은 대소문자를 모두 허용하지만, 클래스명과 쉽게 구분하기 위해 소문자로 하는 것을 원칙으로 한다. 모든 클래스는 반드시 하나의 패키지에 포함되어야한다. package object_oriented_programm..
[JAVA] 오버라이딩(overriding)
오버라이딩 조상 클래스로부터 상속받은 메서드의 내용을 변경하는 것 오버라이딩 조건 자손 클래스에서 오버라이딩하는 메서드는 조상 클래스의 메서드와 이름이 같아야 한다. 매개변수가 같아야 한다. 반환타입이 같아야 한다. → 선언부가 서로 일치해야 한다. 접근 제어자는 조상 클래스의 메서드보다 좁은 범위로 변경 할 수 없다.접근 제어자의 넓은 것에서 좁은 것으로 나열 : public → protected → (default) → private 조상 클래스의 메서드보다 많은 수의 예외를 선언할 수 없다. 인스턴스메서드를 static메서드로 또는 그 반대로 변경할 수 없다. 오버로딩과 오버라이딩 오버로딩 : 기존에 없는 새로운 메서드를 추가 오버라이딩 : 조상으로부터 상속받은 메서드의 내용을 변경하는 것이다. s..