java 썸네일형 리스트형 자바 추상클래스 - Do it! 자바프로그래밍기초 '추상클래스'란 '추상메서드'를 포함하는 클래스입니다. 그럼 추상메서드가 뭐냐? 추상메서드는 구현 코드(함수 몸체)가 없는 메서드입니다. 중괄호 {}로 감싼 부분을 함수의 구현부라고 하고, 이 부분이 없는 함수를 추상함수라고 합니다. 그리고 이 추상함수를 포함하는 클래스를 추상클래스라고 합니다. public abstract int add(int x, int y); 위 코드처럼 선언만 하며, abstract 예약어를 사용합니다. public abstract class Computer { public abstract void display(); public abstract void typing(); public void turnOn() { System.out.println("전원을 켭니다."); } publ.. 더보기 자바 메서드 오버라이딩, 클래스 형 변환 - Do it ! 자바프로그래밍기초 상위클래스에서 정의한 메서드가 하위 클래스에서 구현할 내용과 맞지 않을 경우에 하위클래스에서 이 메서드를 재정의할 수 있다. 즉. 하위 클래스에서 매서드를 재정의하는 것을 '메서드 오버라이딩'이라고 한다. 오버라이딩 조건 : 반환형, 메서드 이름, 매개변수 개수, 매개변수 자료형이 반드시 같아야한다. public class Customer { ... int bonusPoint; double bonusRaio; ... public int calcPrice(int Price) { bonusPoint += price * bonusRatio; return price; } ... } public class VIPCustomer extends Customer { ... double saleRatio; ... pub.. 더보기 자바 ArrayList - Do it! 자바프로그래밍기초 자바는 객체 배열을 좀 더 쉽게 사용할 수 있도록 객체 배열 클래스 ArrayList를 제공한다. ArrayList 클래스는 객체 배열을 관리할 수 있는 멤버 변수와 메서드를 제공하는데 사용법을 알아두면 편리하게 사용할 수 있다. 주요 메서드로는 boolean add(E e) : 요소 하나를 배열에 추가한다. E는 요소의 자료형을 의미 int size() : 배열에 추가된 요소 전체 개수를 반환 E get(int index) : 배열의 index 위치에 있는 요소 값을 반환한다. E remove(int index) : 배열의 index 위치에 있는 요소 값을 제거하고 그 값을 반환한다. boolean isEmpty() : 배열이 비어있는지 확인한다. ArrayList는 java.util 패키지에 구현되어.. 더보기 자바 배열 복사, arraycopy - Do it! 자바프로그래밍기초 배열 복사는 기존 배열과 자료형 및 배열 크기가 똑같은 배열을 새로 만들거나 배열의 모든 요소에 자료가 꽉차서 더 큰 배열을 만들어줄 때 사용한다. 배열을 복사하는 방법은 두 가지가 있다. 1. 기존 배열과 배열 길이가 같거나 더 긴 배열을 만들고 for문을 사용하여 각 요소 값을 반복해서 복사하는 방법 2. System.arraycopy(src, srcPos, dest, destPos, length) 메서드를 사용하는 방법이다. src : 복사할 배열 이름 srcPos : 복사할 배열의 첫번째 위치 dest : 복사해서 붙여 넣을 대상 배열 이름 destPos : 복사해서 대상 배열에 붙여 넣기를 시작할 첫 번째 위치 length : src 에서 dest로 자료를 복사할 요소 개수 package arr.. 더보기 자바 배열, array, 객체배열 - Do it! 자바프로그래밍기초 배열을 사용하면 자료형이 같은 자료 여러 개를 한 번에 관리할 수 있다. 자료형[] 배열이름 = new 자료형[개수]; 자료형 배열이름[] = new 자료형[개수]; 이렇게 배열을 선언할 수 있고, 배열을 이루는 각각의 자료를 배열 요소라고 한다. 배열 요소는 자료형이 모두 같고, 배열 요소 개수만큼 [ ] 안에 적는다. int[] studentIDs = new int[10]; 위 코드는 int형 요소가 10개인 배열을 선언한 것이고, 배열을 선언하면 자료형과 배열 길이에 따라 메모리가 할당된다. 위 코드는 int형이므로 배열 요소를 저장할 수 있는 공간의 크기는 모두 4바이트가 되고, 공간이 10개이므로 총 40바이트의 메모리가 연속적으로 할당되는 것이다. 자바에서는 배열을 선언하면 그와 동시에 각 요.. 더보기 자바 static 변수, 클래스 변수- Do it! 자바프로그래밍기초 static 변수란 다른 용어로 '정적 변수'라고도 한다. 다른 멤버 변수처럼 클래스 내부에 선언하고 자료형 앞에 static 예약어를 사용한다. static 변수는 클래스 내부에 선언하지만, 다른 멤버 변수처럼 인스턴스가 생성될 때마다 새로 생성되는 변수가 아니다. 프로그램이 실행되어 메모리에 올라갔을 때 딱 한번 메모리 공간이 할당된다. 그리고 그 값은 모든 인스턴스가 공유한다. 다시 말하면 static으로 선언한 변수는 인스턴스 생성과 상관없이 먼저 생성되고 그 값을 모든 인스턴스가 공유하게 된다. 이런 이유로 클래스에 기반한 변수라고 해서 '클래스변수'라고도 한다. public class Student { public static int serialNum = 1000; //static 변수는 인스.. 더보기 자바 객체 간 협력 - Do it! 자바프로그래밍기초 public class Student { public String studentName; public int grade; public int money; public Student(String studentName, int money) { this.studentName = studentName; this.money = money; } public void takeBus(Bus bus) { bus.take(1000); this.money -= 1000; } public void takeSubway(Subway subway) { subway.take(1500) this.money -= 1500; } public showInfo() { System.out.println("studentName + "님의 남은 .. 더보기 자바 접근제어자, public, private - Do it ! 자바프로그래밍기초 객체 지향 프로그래밍에서는 예약어를 사용해 클래스 내부의 변수나 메서드, 생성자에 대한 접근 권한을 지정할 수 있다. 이러한 예약어를 접근 제어자라고 한다. public이라고 선언한 변수나 메서드는 외부 클래스에서 접근이 가능하며 외부 클래스가 사용할 수 있다는 뜻 private으로 선언한 변수나 메서드는 외부 클래스에서 사용할 수 없다. public class Student { int studentID; private String studentName; int grade; String address; public String getStudentName() { return studentName; } public void setStudentName(String studentName) { this.stude.. 더보기 이전 1 2 3 다음