클래스 클래스와 인스턴스 객체지향 프로그래밍 클래스 클래스는 멤버 변수, 메소드로 구성된다. 원하는 속성과 기능을 넣어 클래스를 설계할 수 있다. 클래스는 코드로 만드는 설계도 설계는 문제 상황(요구 상황, Requirements)을 잘 반영해야 한다. // 학생 클래스 예제 class Student{ int number; // 학번 int score; // 시험점수 String name; // 학생이름 void study(){ System.out.println("Studying"); // 공부하기 } } // SNS 게시물을 표현하는 클래스의 속성과 기능 class Post{ String author; // 작성자 String[] comments; // 댓글 int likes; // "좋아요" 수 St..
메소드 기본 메소드 호출하기 클래스 소개 메소드 메소드란? 특정 기능을 하는 함수(입력과 출력) public class Example { public static void main(String[] args) { } } 메소드의 입출력 입력 값 : 매개변수(여러 개 가능) 출력 값 : 반환 값 public static int getSquare(int x) { // int 반환형, getSquare 메소드명, (int x) 매개변수 return x * x; // 반환값 } 메소드 호출 public class Square { public static int getSquare(int x) { return x * x; } public static void main(String[] args) { int value ..
배열 배열과 반복문 이차원 배열 배열 배열이란? 동일한 자료형의 데이터 여러 개를 저장하는 자료구조 배열이 이름은 한 개 int 0 1 2 3 4 5 6 7 8 9 String "spring" "summer" "fall" "winter" double 0.0 1.1 2.2 3.14 boolean true true false true 배열의 선언, 생성, 사용 int[] data; // 배열의 선언 배열 선언 시에는 배열의 길이가 아직 정해지지 않았으므로 표시하면 안 됨 int[] data; data = new int[3]; // 배열의 생성 배열을 생성하게 되면 배열 안에 저장되는 자료 값에 따라 초기값(default value)이 들어있다. // 배열이 사용 int[] data; data = new in..
배열과 ArrayList 객체 배열 사용하기 다차원 배열 ArrayList 클래스 배열과 ArrayList 배열은 왜 써야 할까? 예를 들어 정수 20개를 이용한 프로그램을 만들 때 20개의 정수 타입의 변수를 선언해야 한다. 비효율적이고 변수 관리가 힘들다. 그러나 배열은 동일한 자료형의 변수를 한꺼번에 순차적으로 관리할 수 있다. 배열 선언하기 int[] arr = new int[10]; // 자료형[] 배열이름 = new 자료형[개수] int arr[] = new int[10]; // 자료형 배열이름[] = new 자료형[개수] 배열 초기화 배열은 선언과 동시에 초기화할 수 있음 배열을 초기화 할 때는 배열의 개수를 명시하지 않음 int[] studentIDs = new int[] {101, 102..
this 객체 간의 협력 static static 응용 : sington 패턴 this 자신의 인스턴스를 스스로 가리키는 예약어 생성자에서 다른 생성자로 호출 자신의 주소를 반환함 public Person(String name, int age) { this.name = name; this.age = age; } //위 코드에서 this를 생략하게 되면 name이나 age는 파라미터로 사용되는 name과 age로 인식된다. // 생성자에서 다른 생성자를 호출하는 this public Person(){ this("이름없음",1); } public Person(String name, int age){ this.name = name; this.age = age; } /* this를 이용하여 다른 생성자를 호출할..
객체지향 프로그래밍과 클래스 메서드 Class & Instance 생성자(Constructor) 참조 자료형 객체지향 프로그래밍과 클래스 객체(Object)란? 구체적, 추상적 데이터 단위 객체지향 프로그래밍(Object Oriented Programming, OOP) 객체를 기반으로 하는 프로그래밍 ex) 학교 가는 과정에 대한 절차적 프로그래밍 일어난다. -> 씻는다. -> 밥을 먹는다. -> 버스를 탄다. -> 요금을 지불한다. -> 학교에 도착한다. 클래스(Class)란? 객체에 대한 속성과 기능을 코드로 구현한 것, "클래스를 정의한다."라고 함. 객체에 대한 청사진 객체의 속성 객체의 특성, 속성, 멤버 변수 property, attribute, member variable 객체의 기능 객체가..