switch문 Check 1. 이런 응용 방법도 있다! break문을 사용하지 않고 switch문을 사용한 예제 switch(level){------------------------- case 3: //삭제 권한을 준다. case 2: //쓰기 권한을 준다. case 1: //읽기 권한을 준다. }------------------------------------ => 레벨이 높은 사용자는 케이스문을 전부 실행하며 각각의 권한을 획득하거나 사용할 수 있고 낮은 레벨의 사용자는 그 아래 단계의 권한을 획득하거나 사용할 수 있다.
ByteArrayInputStream과 ByteArrayOutputStream 사용 예제 import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.util.Arrays; public class Study { public static void main(String[] args) { /* * 바이트배열의 데이터를 복사한다. */ byte []inSrc = {0,1,2,3,4,5,6,7,8,9}; byte []outSrc = null; // 예제B. 한 번에 배열의 크기만큼 읽고 쓸 수 있게 temp선언. byte []temp = new byte[10]; byte..
다형성(polymorphism) - 객체지향개념에서의 다형성이란 '여러 가지 형태를 가질 수 있는 능력'을 의미하며, 자바에서는 한 타입의 참조변수로 여러 타입의 객체를 참조할 수 있도록 함으로써 다형성을 프로그램적으로 구현하였다. 즉, 조상클래스 타입의 참조변수로 자손클래스의 인스턴스를 참조할 수 있도록 하였다. - 둘 다 같은 타입의 인스턴스지만 참조변수의 타입에 따라 사용할 수 있는 멤버의 개수가 달라진다. 즉, 자손타입의 참조변수로 조상타입의 인스턴스를 참조하는 것은 존재하지 않는 멤버를 사용하고자 할 가능성이 있으므로 허용하지 않는다. 참조변수가 사용할 수 있는 멤버의 개수는 인스턴스의 멤버 개수보다 적어야 하는 것이다. 참조변수의 형변환 - 서로 상속관계에 있는 클래스사이에서만 가능하기 때문에..
제어자(modifier) - 제어자는 클래스, 변수 또는 메서드의 선언부에 함께 사용되어 부가적인 의미를 부여한다. └접근 제어자 : public, protected, default, private └그 외 : static, final, abstract, native, transient, synchronized, volatile, strictfp - 제어자는 클래스나 멤버변수와 메서드에 주로 사용되며, 하나의 대상에 대해서 여러 제어자를 조합하여 사용하는 것이 가능하다. 단, 접근 제어자는 한 번에 네 가지 중 하나만 선택해서 사용할 수 있다. - 제어자들 간의 순서는 관계없지만 주로 접근 제어자를 제일 왼쪽에 놓는 경향이 있다. static - 클래스의, 공통적인 - 인스턴스변수는 하나의 클래스로부터 ..
상속(inheritance) - 기존의 클래스를 재사용하여 새로운 클래스를 작성하는 것이다. - 상속을 통해서 클래스를 작성하면 보다 적은 양의 코드로 새로운 클래스를 작성할 수 있고 코드를 공통적으로 관리할 수 있기 때문에 코드의 추가 및 변경이 매우 용이하다. => 코드의 재사용성을 높이고, 코드의 중복을 제거하며, 프로그램의 생산성과 유지보스에 기여한다. ex) class Child(자손클래스) extends parent(조상클래스) { ... } - 조상 클래스가 변경되면 자손 클래스는 자동적으로 영향을 받게 되지만, 자손 클래스가 변경되는 것은 조상 클래스에 아무런 영향을 주지 못한다. - 생성자와 초기화 블럭은 상속되지 않는다. 멤버만 상속된다. 자손 클래스의 멤버 개수는 조상 클래스보다 항상..
6-1. 다음과 같은 멤버 변수를 갖는 SutdaCard 클래스를 정의하시오. - int , num, 카드의 숫자(1~10사이의 정수) - boolean, isKwang, 광이면 true 아니면 false ---------------------------------------------------------- class SutdaCard{ int num; boolean isKwang; public SutdaCard() { num = (int)(Math.random()*10)+1; } } ---------------------------------------------------------- 6-2. 문제 6-1에서 정의한 SutdaCard 클래스에 두 개의 생성자와 info()를 추가해서 실행 결과와 같..