이 블로그의 인기 게시물
배열, 리스트, 해쉬셋 연습 : 1 부터 45 까지 중복하지 않는 숫자 6개 생성하는 프로그램
import java.util.Collections; import java.util.HashSet; import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.Scanner; import java.util.Set; public class Blog { public static void main(String[] args) { new Byul(); } } class Byul { Scanner sc; StringBuffer sb; boolean run; boolean isInputMismatch; int[] arr; List<Integer> list; Set<Integer> set; Byul() { sc = new Scanner(System.in); sb = new StringBuffer(); run = true; isInputMismatch = false; main(); sc.close(); } void main() { System.out.println("1 부터 45 까지 중복하지 않는 숫자 6개 생성하는 프로그램\n"); while (run) { System.out.println( "1. 배열 사용, 중복 확인 방식\n" + "2. 배열 사용, 수동 셔플방식\n" + "3. 리스트 사용, 중복 확인 방식\n" + "4. 리스트 사용, 수동 셔플 방식\n" + "5. 리스트 사용, 컬렉션즈 셔플 방식\n" + "6. 해쉬셋 사용 방식\n" + "7. 전체 실행\n" + "0. 종료" ); switc...
다형성 추가정리, instanceof
public class Blog { public static void main(String[] args) { new Byul(); } } class Byul { Byul() { main(); } void main() { //1. 왜 부모 타입으로 선언하고 자식 타입으로 생성하는게 선호되는가? Animal cat = new Cat(); Cat cat2 = new Cat(); //답: 데이터 타입이 다르면 관리하기가 불편하다. // 예를 들어서, 한 배열에 담을 수가 없다. Animal cat3 = new Cat(); Animal dog = new Dog(); Animal[] animals = {cat3, dog}; //이런식으로 부모타입으로 선언하면 한 배열에 묶는 등, 관리가 편해진다. //2. 다형성 예시--------------------------------------------- Animal[] animals2 = { new Cat(), new Dog(), new MikeNeko(), new Shitzu(), new Animal() }; for (Animal animal : animals2) { animal.makeSound(); } System.out.println("---------------"); // 같은 함수, 같은 데이터 타입인데, 자식 클래스가 달라서 다양한 결과를 보여 줄 수 있다. //3. instanceOf--------------------------------------------- // 객체가 해당 객체 타입인지 확인 (상속 관계), // 에러 없이 캐스팅 가능한지 확인 (부모는 자식, 자식은 부모, 메모리에 올라갔는지) // instanceCheck 함수 // - 다형성의 원리를 설명한다. // - 받아오는 객체의 instance 상태에 ...
댓글
댓글 쓰기