전체 글(34)
-
2022.11.24 JAVA 21일차 인터페이스
인터페이스 자바에서 다중상속은 지원하지 않으므로, 인터페이스를 통해 다중상속 지원 다른 클래스를 작성할 때 기본이 되는 틀을 제공하면서, 다른클래스 사이의 중간 매개역할까지 담당하는 추상클래스를 의미함. 추상클래스는 추상메소드, 생성자, 일반메소드도 포함 인터페이스는 오로지 추상메소드와 상수만을 포함 인터페이스는 객체화 되지 않는다. 그렇기에 super() 가 필요없다. 문법) 접근제어자 interface 인터페이스이름{ public static final 타입 상수이름 = 값; ... public abstract 메소드이름(매개변수목록); ... } public interface RemoteControl { public final int MAX_VOLUME = 10;//상수 public final in..
2022.11.24 -
2022.11.23 20일차 Vector클래스, 추상화클래스
Vector 클래스 자바의 배열은 고정 길이를 사용함. 즉, 배열이 한번생성되면 배열의 길이를 증가하거나 감소할수없다는 단점이 있음. Vector클래스는 가변길이의 배열이라고 할 수 있음. (Vector는 내부적으로 배열) 즉, Vector클래스는 객체에 대한 참조값을 저장하는 배열이므로 다양한 객체들이 하나의 Vector에 저장될 수 있고 길이도 필요에 따라 증감할 수 있다는 점이 배열과 다른점이다. .Vector 클래스의 생성자 Vector() : 10개의 데이터를 저장할 수 있는 길이의 객체를 생성한다. 저장공간이 부족한 경우 10개씩 증가한다. Vector v = new Vector();//10개 생성, 10개씩 늘어남 System.out.println("생성 : " + v.capacity());..
2022.11.23 -
2022.11.22 JAVA 19일차 다형성
다형성(상속을 기본전제로 깔고감) 하나의 객체가 여러가지 타입을 가질 수 있는 것을 의미. 부모 클래스 타입의 참조 변수로 자식 클래스 타입의 인스턴스를 참조 할 수 있도록 구현 참조변수의 다형성 class Parent{ . . . } class Child extends Parent{ . . . } Parent pa = new Parent(); //허용 Child ch = new Child(); //허용 Parent pc = new Child();//허용 Child cp = new Parent(); //오류발생 상속을 통해 확장될수 있으나 축소될수는 없음. 자식 클래스에서 사용할 수 있는 멤버의 개수가 언제나 부모 클래스와 같거나 많게 됨. 예제) class A { void methodA() { Syst..
2022.11.22 -
2022.11.21 JAVA 18일차 오버라이딩, 접근제어자
오버라이딩 조상 클래스로 부터 상속받은 메서드의 내용을 변경하는 것 자손클래스에서 오버라이딩하는 메서드는 조상 클래스의 메서드와 -이름이 같아야 한다. -매개변수가 같아야 한다. -반환타입이 같아야 한다. 오버라이딩 메서드 호출 시 자식메서드 우선 부모 클래스 class Point{ int x; int y; String getLocation(){ return "x : " + x + ", y : " + y; } } 자식 클래스 class Point3D extends Point{ int z; String getLocation(){ return "x : " + x + ", y : " + y + ", z : " + z; } } class Point1 { int x; int y; String getLocation..
2022.11.22 -
2022.11.18 JAVA 17일차 객체지향 응용문제(상수)
상수 : 변수 데이터타입 왼쪽에 final키워드를 넣으면 상수변수로 지정, 값을 변경할수 없다 상수의 작명법은 전체 대문자 예) final int ONE = 1; 문제1) /* * 부모클래스는 Animal 클래스에 맴버변수를 이름, 이동수단, 울음소리, 다리수로 정의 * 각 맴버변수를 제어하는 메서드도 포함. * Animal 클래스를 상속받은 아래 클래스를 만들어서 각각의 이름, 이동수단, 울음소리, 다리수 를 출력하는 프로그램 * 클래스이름 Dog - 강아지 * Eagle - 독수리 * Lion - 사자 * Cat - 고양이 */ class Animal { String name;//이름 String move;//이동수단 String cry;//울음소리 int leg;//다리수 Animal() { thi..
2022.11.22 -
2022.11.17 JAVA 16일차 생성자2, 상속
생성자 생성자에서 생성자를 호출하는법 this. : 해당클래스의 인스턴스 변수 호출 this() : 생성자 호출 생성자 내에서 생성자를 호출할 시 무조건 첫번째 줄에 와야한다 class Car { String color; String gearType; int door; Car() { this("white", "auto", 4); } Car(String color) { this(color, "auto",4); } Car(String color, String gearType) { this(color,gearType,2); } Car(String color, String gearType, int door) { this.color = color; this.gearType = gearType; this.door ..
2022.11.22