본문 바로가기

Java6

[Java] super 키워드 키워드 super는 상속 관계에서 부모 클래스의 메소드나 필드를 명시적으로 참조하기 위하여 사용된다. 만약 부모 클래스의 메소드나 필드를 오버라이드한 경우에 super를 사용하면 부모 클래스의 메소드나 필드를 호출할 수 있다.보통 메소드를 오버라이드할 때, 부모 클래스의 메소드를 완전히 대치하는 경우보다 내용을 추가하는 경우가 많다. 이런 경우에는 super 키워드를 이용하여 super 클래스의 메소드를 호출해 준 후에 자신이 필요한 부분을 추가해주는 것이 좋다. /* Parent 클래스 */ class Parent { public void print() { System.out.println("부모 클래스의 print() 메소드"); } } /* Child 클래스 */ public class Child .. 2018. 10. 27.
[Java] 고급 배열 무명 배열자바에서는 배열의 이름을 지정하지 않고 단순히 초기값만으로 배열을 생성시킬 수 있다. 무명 배열(anonymous arrays)은 즉시 배열을 만들어서 함수의 인수로 전달하고자 할 때 많이 사용된다. 특히 안드로이드 프로그래밍에서 자주 사용된다. 무명 배열을 만드는 방법은 다음과 같다. // 배열의 이름이 없다. 주어진 초기값을 가지는 배열이 생성된다. new int[] { 1, 2, 3, 4, 5, 6 7, 8, 9, 10 } 위 수식은 새로운 배열을 할당하고 중괄호 안의 값들로 배열을 채운다. 초기값들의 개수에 따라서 배열의 크기가 결정된다. 무명 배열은 배열이 딱 한 번만 필요하고 다시는 참조할 일이 없는 곳에서 사용된다. 보통은 어떤 메서드에 대해서 배열을 전달하고자 할 때 사용되는데, .. 2018. 10. 27.
[Java]객체 지향 프로그래밍의 특징 캡슐화객체지향 기술 이전에는 수 많은 소프트웨어 개발자들이 일반적으로 프로그램을 만들 때 이미 비슷하거나 동일한 기능을 하는 알고리즘을 매번 처음부터 개발하여야 했다. 따라서 이전의 코드들을 재사용할 수 있는 방법이 필요하다는 것을 인식하게 되었는데 다른 사람이 작성한 코드를 쓰기 위해서는 코드 자체가 잘 정리되어 있어야만 할 것이다. 즉 관련된 데이터와 알고리즘이 하나의 묶음으로 정리되어 있어야 한다. 객체 지향 프로그래밍에서는 이것을 캡슐화(encapsulation)라고 부른다. 캡슐화는 용어 그대로 서로 관련된 데이터와 알고리즘을 캡슐에 넣어서 포장하는 것을 의미한다.캡슐화는 데이터와 알고리즘을 하나로 묶는 것입니다.JAVA에서는 클래스에 의해 생성된 객체(인스턴스)가 바로 하나의 캡슐임을 알수 있.. 2018. 10. 27.
[Java] 내장 클래스 자바에서는 클래스 안에서 클래스를 정의할 수 있다. 내부에 클래스를 가지고 있는 클래스를 외부 클래스(outer class)라고 한다. 클래스 내부에 포함되는 클래스를 내장 클래스(nested class)라고 한다.내장 클래스의 종류내장 클래스는 다음과 같이 분류할 수 있다.정적 내장 클래스 : 앞에 static이 붙어서 내장되는 클래스비정적 내장 클래스 : static이 붙지 않은 일반적인 내장 클래스내부 클래스(inner class) : 클래스의 멤버처럼 선언되는 내장 클래스지역 클래스(local class) : 메소드의 몸체 안에서 선언되는 내장 클래스무명 클래스(anonymous class) : 수식의 중간에서 선언되고 바로 객체화 되는 클래스여기서는 가장 많이 사용되는 내부 클래스만을 살펴보자... 2018. 10. 27.
[Java] 자료형(data type)의 종류 자료형의 종류PHP나 Python 등을 먼저 접했던 사람 뒤 늦게 Java를 공부하게 된다면 과연 이럴 필요가 있을까 싶을 정도로 유난히도 자료형을 엄격하게 구분한다는 점을 느끼게 될 것이다. 처음 Java를 공부하자니 이런 것을 익히려고 에너지를 낭비해야 하나 싶기도 하지만 기초가 중요한 것이니 일단 기록한다. 자바에는 크게 기초형(primitive type)과 참조형(reference type)의 자료형이 있다. 기초형은 다시 정수형, 실수형, 문자형, 논리형으로 분류할 수 있고 참조형에는 클래스, 배열, 인터페이스가 있다. 기초형의 변수에는 변수의 값이 저장되어 있으나 참조형의 변수에는 객체의 위치(참조 또는 주소)가 들어가 있다. 참조형 자료형의 경우 실제 값이 아닌 실제 객체를 가리키는 주소를 .. 2018. 10. 27.
[Java] 접근 제어 지정자 객체 지향 프로그래밍 언어인 Java는 클래스의 멤버에 대한 접근을 제어함으로써 객체를 잘못 사용하는 것을 방지하고, 데이터의 값이 적절하지 못하게 변경되는 것을 방지한다. 자바의 접근 제어 지정자멤버 접근 제어는 public, private, protected 이 3가지의 지정자로 이루어 진다. 접근 가능 여부는 아래 표로 요약된다. 접근지정자클래스패키지자식 클래스전체 세계publicOOOOprotectedOOOX없음OOXXprivateOXXX간단한 클래스를 이용해서 접근 제어를 이해하여 보자. class A { private int a; // 전용 int b; // 디폴트 public int c; // 공용 } public class Test { public static void main(String.. 2018. 10. 27.