◎ Java/Java☕

    [JAVA] 인스턴스의 생성과 사용 [TvTest 예제를 활용한 인스턴스 개념 정리]

    - 인스턴스의 생성과 사용 클래스명 변수명; // 클래스의 객체를 잠조하기 위한 참조변수를 선언 변수명 = new 클래스명; // 클래스의 객체를 생성 후, 객체의 주소를 참조변수에 저장 Tv t; // Tv클래스 타입의 참조변수 t를 선언 t = new Tv(); // Tv인스턴스를 생성한 후, 생성된 Tv인스턴스의 주소를 t에 저장 - TvTest.java 이 예제는 Tv클래스로부터 인스턴스를 생성하고 인스턴스의 속성(channel)과 메서드(cannelDown())를 사용하는 방법을 보여준다. public class TvTest { public static void main(String[] args) { Tv t;// Tv인스턴스를 참조하기 위한 변수 t = new Tv();// Tv인스턴스를 생성..

    [JAVA] 클래스(class)와 객체(object) [클래스와 객체의 관계, 객체와 인스턴스]

    1. 클래스와 객체 - 클래스(class)란? 객체를 정의해놓은 것 or 객체의 설계도 또는 틀 클래스는 객체를 생성하는데 사용되며, 객체는 클래스에 정의된 대로 생성된다. 클래스의 정의 : 클래스란 객체를 정의해 놓은 것이다. 클래스의 용도 : 클래스는 객체를 생성하는데 사용된다. - 객체(object)란? 실제로 존재하는 것 → 클래스에 정의된 내용대로 메모리에 생성된 것 객체의 정의 : 실제로 존재하는 것. 사물 또는 개념 객체의 용도 : 객체가 가지고 있는 기능과 속성에 따라 다름 유형의 객체 : 책상, 의자, 자동차, TV와 같은 사물 무형의 객체 : 수학공식, 프로그램 에러와 같은 논리나 개념 - 클래스와 객체의 관계 제품 설계도와 제품과의 관계 ex) TV설계도(클래스)는 TV라는 제품(객체..

    [JAVA] 객체지향언어(Object oriented)란? [객체지향이론의 기본개념 및 특징]

    1. 객체지향이론(Object oriented)의 기본 개념 기존 프로그래밍언어에서 상속, 캡슐화, 추상화 개념을 중심으로 점차 구체적으로 발전 실제 세계는 사물(객체)로 이루어져 있으며, 발생하는 모든 사건들은 사물간의 상호작용이다. 2. 객체지향언어의 특징 1. 코드의 재사용성이 높다. 새로운 코드를 작성할 때 기존의 코드를 이용하여 쉽게 작성할 수 있다. 2. 코드의 관리가 용이하다. 코드간의 관계를 이용해서 적은 노력으로 쉽게 코드를 변경할 수 있다. 3. 신뢰성이 높은 프로그래밍을 가능하게 한다. 제어자와 메서드를 이용해서 데이터를 보호하고 올바른 값을 유지하도록 하며, 코드의 중복을 제거하여 코드의 불일치로 인한 오동작을 방지할 수 있다. 참고문헌 : 남궁성(2016), Java의 정석, 도우출판

    [JAVA] 다차원 배열의 활용(4) [영어 단어 맞추기 게임]

    - 다차원 배열 : 영어 단어 맞추기 게임 - 영어 단어 맞추기 게임 영어 단어를 보여주고, 해당 단어의 뜻을 맞추는 게임이다. String[][] words = { {"chair", "의자"}, // words[0][0], words[0][1] {"computer", "컴퓨터"}, // words[1][0], words[1][1] {"integer", "정수"}, // words[2][0], words[2][1] }; words[i][0]은 문제이고, words[i][1]은 답이다. Scanner scanner = new Scanner(System.in); for(int i = 0 ; i < words.length ; i++) { System.out.printf("Q%d. %s의 뜻은? ", i + 1..

    [JAVA] 다차원 배열의 활용(3) [행렬의 곱셈, 두 행렬을 곱한 결과]

    - 다차원 배열 : 행렬의 곱셈, 두 행렬을 곱한 결과 - 행렬의 곱셈 두 행렬(matrix)을 곱한 결과를 출력한다. int[][] m1 = { {1, 2, 3}, {4, 5, 6} }; int[][] m2 = { {1, 2}, {3, 4}, {5, 6} }; 두 행렬의 곱셈이 가능하려면, m1의 열의 길이와 m2의 행의 길이가 같아야 한다는 조건이 있다. 위의 경우에는 m1이 2행 3열이고, m2가 3행 2열이므로 곱셈이 가능하다. final int ROW = m1.length; // m1의 행 길이 final int COL = m2[0].length; // m2의 열 길이 final int M2_ROW = m2.length; // m2의 행 길이 int[][] m3 = new int[ROW][COL..