[Java] super 키워드

키워드 super는 상속 관계에서 부모 클래스의 메소드나 필드를 명시적으로 참조하기 위하여 사용된다. 만약 부모 클래스의 메소드나 필드를 오버라이드한 경우에 super를 사용하면 부모 클래스의 메소드나 필드를 호출할 수 있다. 보통 메소드를 오버라이드할 때, 부모 클래스의 메소드를 완전히 대치하는 경우보다 내용을 추가하는 경우가 많다. 이런 경우에는 super 키워드를 이용하여 super 클래스의 메소드를 호출해 준 후에 자신이 필요한 … 더 읽기

[Java] 고급 배열

무명 배열 자바에서는 배열의 이름을 지정하지 않고 단순히 초기값만으로 배열을 생성시킬 수 있다. 무명 배열(anonymous arrays)은 즉시 배열을 만들어서 함수의 인수로 전달하고자 할 때 많이 사용된다. 특히 안드로이드 프로그래밍에서 자주 사용된다. 무명 배열을 만드는 방법은 다음과 같다. 위 수식은 새로운 배열을 할당하고 중괄호 안의 값들로 배열을 채운다. 초기값들의 개수에 따라서 배열의 크기가 결정된다. 무명 배열은 … 더 읽기

[Java]객체 지향 프로그래밍의 특징

캡슐화 객체지향 기술 이전에는 수 많은 소프트웨어 개발자들이 일반적으로 프로그램을 만들 때 이미 비슷하거나 동일한 기능을 하는 알고리즘을 매번 처음부터 개발하여야 했다. 따라서 이전의 코드들을 재사용할 수 있는 방법이 필요하다는 것을 인식하게 되었는데 다른 사람이 작성한 코드를 쓰기 위해서는 코드 자체가 잘 정리되어 있어야만 할 것이다.  즉 관련된 데이터와 알고리즘이 하나의 묶음으로 정리되어 있어야 한다. … 더 읽기

[Java] 내장 클래스

자바에서는 클래스 안에서 클래스를 정의할 수 있다. 내부에 클래스를 가지고 있는 클래스를 외부 클래스(outer class)라고 한다. 클래스 내부에 포함되는 클래스를 내장 클래스(nested class)라고 한다. 내장 클래스의 종류 내장 클래스는 다음과 같이 분류할 수 있다. 여기서는 가장 많이 사용되는 내부 클래스만을 살펴보자.  내부 클래스 클래스 안에 선언된 클래스를 내부 클래스라고 한다. 내부 클래스의 접근 지정자는 public, … 더 읽기

[Java] 자료형(data type)의 종류

자료형의 종류 PHP나 Python 등을 먼저 접했던 사람 뒤 늦게 Java를 공부하게 된다면 과연 이럴 필요가 있을까 싶을 정도로 유난히도 자료형을 엄격하게 구분한다는 점을 느끼게 될 것이다. 처음 Java를 공부하자니 이런 것을 익히려고 에너지를 낭비해야 하나 싶기도 하지만 기초가 중요한 것이니 일단 기록한다. 자바에는 크게 기초형(primitive type)과 참조형(reference type)의 자료형이 있다. 기초형은 다시 정수형, 실수형, … 더 읽기

[Java] 접근 제어 지정자

객체 지향 프로그래밍 언어인 Java는 클래스의 멤버에 대한 접근을 제어함으로써 객체를 잘못 사용하는 것을 방지하고, 데이터의 값이 적절하지 못하게 변경되는 것을 방지한다. 자바의 접근 제어 지정자 멤버 접근 제어는 public, private, protected 이 3가지의 지정자로 이루어 진다. 접근 가능 여부는 아래 표로 요약된다. 접근지정자 클래스 패키지 자식 클래스 전체 세계 public O O O O … 더 읽기