728x90 자바38 객체지향이란? Chapter 01.객체 지향 1. 객체지향의 등장 객체지향의 개념은 1970년대에 들어서 용어가 나왔으며, 이는 벌써 50년이 넘어가는 역사를 가지고 있습니다. 하지만 이전에는 C언어처럼 실행하고자 하는 순서대로 명령어를 입력해서 실행되는 "절차지향" 이 주를 이뤘으며, 이러한 방법으로 코딩하는 언어들을 "절차지향 언어" 라고 합니다. 이 때에는 프로그램의 단위가 크지 않았으며, 대체적으로 간단한 Logic을 순차적으로 처리하여 결과를 얻는데 그쳤지만, 점점 컴퓨터의 발전과 이로 인하여 프로그램의 복잡도가 증가하면서 이에 들어가는 유지보수, 개발기간 등 다양한 부분에서 비 효율이 발생 하였습니다. 이런 어려움을 해결하기 위해 선택한 방법이 "효과적인 개발방식"을 채택하게 되었고, 이는 이전에 사용하던 .. 2021. 8. 19. [Java] 2.05. 인스턴스 생성과 힙 메모리 (heap memory) 인스턴스 (instance) 클래스는 객체의 속성을 정의하고, 기능을 구현하여 만들어 놓은 코드 상태 실제 클래스 기반으로 생성된 객체(인스턴스)는 각각 다른 멤버 변수 값을 가지게 됨 가령, 학생의 클래스에서 생성된 각각의 인스턴스는 각각 다른 이름, 학번, 학년 등의 값을 가지게 됨 new 키워드를 사용하여 인스터스 생성 힙 메모리 생성된 인스턴스는 동적 메모리(heap memory)에 할당됨 C나 C++ 언어에서는 사용한 동적 메모리를 프로그래머가 해제시켜야 함 ( free() 나 delete 이용) 자바에서 Garbage Collector 가 주기적으로 사용하지 않는 메모리를 수거 하나의 클래스로 부터 여러 개의 인스턴스가 생성되고 각각 다른 메모리 주소를 가지게 됨 참조 변수, 참조 값 Stud.. 2021. 8. 12. [Java] 2.04. 객체의 속성은 멤버 변수로, 객체의 기능은 메서드로 구현한다 학생 클래스를 정의하고 이를 사용해보자 학생 클래스의 속성을 멤버 변수로 선언하고 메서드를 구현한다 public calss Student { public int studentID; public String studentName; public String address; public void showStudentInfo() { System.out.println(studentName + "," + addresss); } public String getStudentName() { return studentName; } } 학생 클래스를 생성하여 생성된 객체(인스턴스)에 각각 다른 이름과 주소를 대입한다. public class StudentTest { public static void main(String[].. 2021. 8. 12. [Java] 2-03. 함수와 메서드 함수란 (function) 하나의 기능을 수행하는 일련의 코드 구현된(정의된) 함수는 호출하여 사용하고 호출된 함수는 기능이 끝나면 제어가 반환됨 함수로 구현된 하나의 기능은 여러 곳에서 동일한 방식으로 호출되어 사용될 수 있음 함수 정의하기 함수는 이름, 매개 변수, 반환 값, 함수 몸체(body)로 구성됨 int add(int num1, int num2) { int result; result = num1 + num2; return result; } 함수 구현하기 예제 public class FunctionTest { public static int addNum(int num1, int num2) { int result; result = num1 + num2; return result; } public.. 2021. 8. 12. 이전 1 2 3 4 5 6 7 ··· 10 다음 728x90