JAVA 18일차

이희복·2023년 1월 18일
0

JAVA

목록 보기
27/41

아래가 컴파일 되도록 하시오.

	TV tv = new TV(10,"blue");
	TV tv2 = new TV(20,"blue");
	
	System.out.println(tv.getSize() + "인치 입니다");
	System.out.println(tv.getColor() + "색 입니다");
	
	tv.show(); // 10 인치 bule 색 입니다.		
	tv.compareSize(tv); //  내가 작습니다.		
	tv2.compareSize(tv); // 내가 큽니다.


this 생성자에 대하여 설명하시오.

매개변수가 있는 생성자

this의 용도는?

this. : 현재 객체를 참조하기 위한 용도

정보은닉에 대하여 예습하시오.

Java는 객체지향 언어! (반대는 절차지향 언어(c언어))**

객체지향 언어의 특징

1) 정보은닉 information hiding 2) 상속 inheritance

3) 다형성 polymorphism (중요! 70%) 4) 캡슐화 encapsulation

(+ 추상화 abstraction)

정보 은닉을 하지 않고 프로그램을 만들어 사용자에게 제공했을 때, 사용자가 클래스의 데이터에 직접적으로 접근했으나(예를 들어 논리적 오류를 가진 값을 대입하는 등으로) 에러가 발생하지 않고(컴파일 오류가 발생하지 않고)프로그램이 실행되어 원래의 프로그램의 의도와 전혀 다른 결과가 도출되는 문제가 생길 수 있다. (⇒이것은 프로그램을 잘못 만든 것이긴 함.)

이런 문제들을 방지하기 위해서 접근 제한자를 이용해 외부에서의 직접적인 접근 권한을 제한하고 기능(메소드)을 통해 간접적으로 접근하도록 유도하는 것이다. (그래야 논리적 오류를 가진 값 등을 가지고 접근할 때 컴파일 오류로 이어지도록 만들 수 있다.)

정보은닉의 기본 원칙에 따라 인스턴스 변수는 public으로, 인스턴스 변수에 접근하기 위한 메소드 들은 public으로 선언하는 것이 관례이다.

0개의 댓글