class

· Java
String Class 기존에 다른 언어에서는 문자열을 char형의 배열로 다루었으나 자바에서는 문자열을 위한 클래스를 제공한다. String클래스는 문자열을 저장하고 이를 다루는데 필요한 메서드를 제공한다. 변경 불가능한(immutable) 클래스 String클래스에는 문자열을 저장하기 위해서 문자형 배열 변수(char[]) value를 인스턴스 변수로 정의해놓고 있다. 인스턴스 생성 시 생성자의 매개변수로 입력받는 문자열은 이 인스턴스변수(value)에 문자형 배열(char[])로 저장되는 것이다. public final class String implements ... { private char[] value; ... } 한번 생성된 String 인스턴스가 갖고 있는 문자열은 읽어 올 수만 있고, ..
· Java
Object Class Object클래스는 모든 클래스의 최고 조상이기 때문에 Object클래스의 멤버들은 모든 클래스에서 바로 사용 가능하다. Object 클래스는 멤버변수는 없고 오직 11개의 메서드만 가지고 있다. equals(Object obj) 매개변수로 객체의 참조변수를 받아서 비교하여 그 결과를 boolean값으로 알려주는 역활을 한다. 서로 다른 두 객체는 equals메서드로 비교하면 항상 false를 결과로 얻게 된다. equals 메서드는 주소값으로 비교를 하기 때문에, 변수의 value가 같을지라도 변수의 주소값이 다르다면 false를 반환한다. Class Value { int value; public Value(int value) { this.value = value; } } Val..
· Java
내부 클래스란? 내부 클래스는 클래스 내에 선언된 클래스이다. 내부 클래스로 선언하면 두 클래스의 멤버든 간의 서로 쉽게 접근할 수 있다는 장점과 외부에는 불필요한 클래스를 감춤으로써 코드의 복잡성을 낮출 수 있다는 장점(캡슐화)이 있다. 내부 클래스는 외부 클래스를 제외하고는 다른 클래스에서 사용되지 않는 것이어야 한다. class A { ... class B { ... } } 내부 클래스의 종류와 특징 내부 클래스의 종류는 선언위치에 따른 변수의 종류와 같다. 내부 클래스의 선언 class Outer { class InstanceInner {} // 인스턴스 내부 클래스 static class StaticInner {} // 스태틱 내부 클래스 void method() { class LocalInne..
· Java
추상클래스란? 클래스를 설계도에 비유한다면, 추상클래스는 미완성 설계도에 비유할 수 있다. 미완성이라는 것은 멤버의 개수에 관계된 것이 아니라 미완성 메서드(추상 메서드)를 포함하고 있다는 의미다. 추상클래스는 상속을 통해 자손클래스에 의해서만 완성할 수 있다. 추상클래스는 추상메서드를 포함하고 있다는 것을 제외하고는 일반클래스와 다르지 않다. 추상클래스를 상속받은 자손클래스에서는 추상클래스에서 선언된 추상메서드를 모두 구현해야 한다. 만약 하나라도 구현하지 않았을 경우 자손클래스도 동일한 추상클래스로 선언되어야 한다. abstract class Car { // 추상 클래스 boolean enginePower; String engineMode; abstract void engineOnOff(); abst..
· DDD
DIP(역전 의존 원칙)이란? 서비스가 특정 시스템에 의존성을 가지게 되면 서비스 자체만으로 테스트 수행이 어렵고 종속되는 시스템에 따라 서비스의 코드가 지속적으로 변경될 여지가 있다. 저수준 모델이 고수준 모델에 의존하도록 바꾸는 것 변경에 유연하고 테스트가 쉬움 핵심은 의존 관계를 맺을 때 변화하기 쉬운 것에 의존하기보다는, 변화하지 않는 것에 의존 해야한다. 예시 신용카드 클래스를 만든다고 했을때 신용카드에는 여러가지 종류에 은행이 있을것이다. class ShinhanCard { // 신한카드 public void pay() { // 결제 ... } public void pause() { // 카드정지 ... } } class HyunDaiCard { // 현대카드 public void pay() ..
· Java
클래스 - 데이터와 함수의 결합 변수 - 하나의 데이터를 저장할 수 있는 공간 배열 - 같은 종류의 여러 데이터를 하나의 집합으로 저장할 수 있는 공간 구조체 - 서로 관련된 여러 데이터를 종류에 관계없이 하나의 집합으로 저장할 수 있는 공간 클래스 - 데이터와 함수의 결합(구조체 + 함수) class Tv1 { // 구조체 // 변수 String color; boolean power; int channel; } class Tv { // 클래스 // 변수 String color; boolean power; int channel; // 함수 void powerOnOff() { // 전원 ON, OFF power = !power; } void channelUp() { // 채널 UP ++channel; } ..
· Java
클래스(Class)와 객체(Object)의 정의와 용도 클래스(Class)란? "객체를 정의해놓은 것" 또는 "객체의 설계도 또는 틀" 클래스의 정의 : 객체를 정의해 놓은 것 클래스의 용도 : 객체를 생성하는데 사용 객체(Object)란? 클래스에 정의된 내용대로 메모리에 생성된 것을 뜻한다. 객체의 정의 : 실제로 존재하는 것. 사물 또는 개념 객체의 용도 : 객체가 가지고 있는 기능과 속성에 따라 다름 예) TV설계도(클래스)는 TV(객체)를 정의한 것이며 TV(객체)를 만다는데 사용된다. 객체와 인스턴스 클래스로부터 객체를 만드는 과정을 클래스의 인스턴스화(instantiate)라고 하며, 어떤 클래스로부터 만들어진 객체를 그 클래스의 인스턴스(instance)라고 한다. 예) TV설계도(클래스)..
beekei
'class' 태그의 글 목록