목록[Study]/프로그래밍 언어 (4)
기록
char arr[1000005]; cin >> arr; char* temp = strtok(arr, "[,]"); while (temp) { D.push_back(int(temp - '0')); cout
프로퍼티(Property)- '속성'이라는 의미를 가지고 있다 클래스에서 멤버변수를 속성이라고도 하는데, 우리는 정보은닉을 위해 이를 private로 선언하여 해당 변수가 선언된 클래스 외부에서 접근이 불가능하게 할 것이냐, 아니면 편의성을 위해 public으로 선언할 것이냐 고민한다. private를 사용하면 불편한 점- getter 메소드와 setter 메소드를 구현해야 함 이를 편리하게 해주는 C#의 프로퍼티를 배워보자. 아래는 기존에 구현하던 get, set 메소드이다. class Test {private int age;public int GetAge() { return age; }public void SetAge(int num) { this.age = num; }} C# 프로퍼티는 간단하고 유연..
싱글톤 패턴이란? "해당 클래스의 인스턴스가 하나만 만들어지고, 어디서든지 그 인스턴스에 접근할 수 있도록 하기 위한 패턴" 자바의 디자인 패턴 중 하나 전체 프로그램에서 단 하나의 객체만 만들도록 해야 하는 경우가 있다. 단 하나만 생성된다고 해서 이 객체를 "싱글톤(Singleton)" 이라고 칭함 싱글톤을 만들려면 클래스 외부에서 new 연산자로 생성자를 호출할 수 없도록 해야한다. ( 생성자를 호출한 만큼 객체가 생성되기 때문 ) 생성자를 외부에서 호출할 수 없도록 하기 위해 생성자 앞에 private 접근 제한자를 붙여주면 된다. 그리고 자신의 타입인 정적 필드(static)을 하나 선언하고, 자신의 객체를 생성해 초기화한다. 참고로 클래스 내부에서는 new 연산자로 생성자 호출이 가능하다 정적..
정적 멤버(static member)는 클래스 당 하나만 생성되어서 모든 객체가 이것을 공유하게 된다.(모든 사람이 하나의 변수를 공유하는 느낌) 클래스의 멤버는 인스턴스 멤버와 정적 멤버로 나누어진다. 정적 변수는 모든 객체에 공통인 변수이며, 하나의 클래스에 하나만 존재!!static 변수정적 변수는 하나의 클래스에 하나만 존재한다. (그 클래스의 모든 객체들에 의하여 공유된다.)메모리에 생성되는 시점: byte code가 메모리에 로딩되면서 문제없을 경우 메모리에 자동 생성된다.(메소드 영역)효과공유: lastname을 static 변수로 두면 이 변수는 클래스의 모든 객체에 의하여 공유된다. (같은 메모리 주소 값을 바라본다)메모리 절약: lastname을 static 변수로 두면 java는 메모..