본문 바로가기

개발/JAVA6

[Java]객체지향 언어-4(상속/ 포함 등 클래스간의 관계) - chapter7 - 1. 상속(inheritance) 기존의 클래스를 재사용 하여 새로운 클래스를 작성하는 것으로 상속을 사용하면 다음과 같은 장점이 있다. - 보다 적은 양의 코드로 새로운 클래스 작성 가능 - 코드를 공통으로 관리 할 수 있어 코드 추가/수정이 용이하다. - 코드의 재사용성을 높이고 코드의 중복을 제거하여 프로그램의 생산성/ 유지보수에 기여 1-1 상속 방법 class Parent{ // ... } class Child extends Parent{ // ... } Parent 를 상속하여 Child class를 만드려면 extends Parent를 뒤에 추가해 주면 된다. 이때 Parent와 Child는 아래와 같이 부른다. Parent 조상클래스, 부모(Parent)클래스, 상위.. 2021. 5. 16.
[JAVA개념]객체지향언어-3 오늘도 객체지향!! 오늘은 Chapter6을 끝낼 수 있을 것 같아요~ 1. 메서드 오버로딩 자바의 한 클래스 내에서 사용하고 있는 메서드의 이름이 여러개 중복되더라도 매개변수의 개수나 타입이 다르다면 여러개의 메서드를 정의할 수 있는데 이것을 오버로딩이라고 한다. 오버로딩에는 몇가지 조건이 있다. - 메서드 이름이 같아야한다. - 매개변수의 개수 혹은 타입이 달라야한다. - 매개변수가 같으면 리턴타입이 달라도 오버로딩이 아니다. 오버로딩의 예 void println() void println(boolean x) void println(char x) void println(char[] x) void println(double x) void println(float x) void println(int x).. 2021. 5. 11.
[JAVA개념]객체지향언어-2 객체지향의 개념이 생각보다 너무 많아서 3~4개로 나워야 할 것 같네요..ㅠ 1.변수의 종류(클래스, 인스턴스, 지역) 변수는 클래스 변수, 인스턴스 변수, 지역변수가 있다. 클래스 클래의 멤버변수 중 static이 붙은 변수, 인스턴스변수는 붙지 않은 변수, 메서드 내부에 선언된 변수는 지역변수이다. public class Val { static int classVal;// 클래스 변수 int instanceVal;// 인스탄스 변수 void method(){ int localVal;// 지역변수 } } 각 변수들 마다 생성될 시기의 차이가 있는데 차이는 다음 표와 같다. 변수 종류 생성 클래스변수 클래스가 메모리에 올라갈때 인스턴스 변수 인스턴스가 생성되었을 때 지역 변수 변수 선언문이 수행 될때(메.. 2021. 5. 10.
[JAVA개념]객체지향언어-1 1. 객체지향언어 - 객체지향 언어는 기존의 프로그래밍 언어와 다른 전혀 새로운 것이 아니라 기존의 프로그래밍 언어에 몇가지 새로운 규칙을 추가한 보다 발전된 형태의 언어이다. 즉, 몇가지 규칙들을 이용하여 코드간의 관계를 맺어줌으로써 보다 유기적으로 프로그래밍 할 수 있는 언어이다. - 특징 코드의 재사용성이 높다. 기존의 코드를 이용하여 쉽게 작성할 수 있다. 코드의 관리가 용이하다 코드간 관계를 이용해 쉽게 코드를 변경할 수 있다. 신뢰성이 높은 프로그래밍이 가능하다. 제어자와 메서드를 이용해서 데이터를 보호하고 올바른 값을 유지하도록 하며, 중복을 제거하여 코드의 불일치로 인한 오동작을 방지할 수 있다. ※ 주의사항 - 객체지향의 개념을 이해했다 하더라도 실제 프로그램을 작성할 때 객체지향 적으로.. 2021. 5. 9.
[JAVA 개념] 변수, 배열 1. 변수의 타입 변수의 타입은 크게 기본형과 참조형으로 나뉜다. 기본형은 실제 변수값(data)를 저장하는 반면, 참조형은 값이 저장되어 있는 주소를 값으로 갖는다. - 기본형(Primitive type) boolean, char, byte, short, int, long, float, double - 참조형(Reference type) 기본형을 제외한 모든 변수 타입으로, 객체의 주소를 저장한다. 쉽게 생각하면 메소드에 값을 전달하여 해당 메소드에서 값을 변경 했을 때 참조형은 메소드를 부른 곳에서도 값변환이 이루어지고 기본형은 그렇지 않다. // 참조형 public class Blog { static public class Cl{ int a; Cl(int a){ this.a=a; } void pri.. 2021. 5. 8.
[JAVA 개념] 자바의 이해 목적 스프링을 공부를 시작하기 전 여러 자료들을 보며 자바의 기본 다지기가 필요한 것 같다는 자바의 기초와 스프링을 함께 봐야할 것 같다는 생각이 들게 되었다. 본 카테고리의 포스팅은 (집에서 뒹굴던)"자바의 정석 2nd"를 바탕으로 작성될 예정입니다. 또한, 잡다한지식(탄생배경, 언어 공통적인 변수(int, double)의 특징, 개요 등은 다루지 않고 "자바" 다운 프로그래밍을 하기 위한 지식을 쌓기위한 포스팅이 될 예정입니다. 또한, 기본적인 프로그래밍 내용이 아닌 자바에서 특히 주의할 점, 자칫 간과하기 쉬운 점들을 집중적으로 작성할 예정입니다. 1. 자바의 특징 - 운영체제 독립적이다. JVM 위에서 작동하기 때문에 특정 운영체제에 독립적이다. JVM은 자바 애플리케이션과 운영체제를 연결하는 인.. 2021. 5. 5.