본문 바로가기

분류 전체보기131

[Ruby] self란? 현재 또는 기본객체를 가리킨다. 클래스 안에서 쓰면 현재 클래스를 말하고, 메서드 안에서 쓰면 현재의 메서드를 사용하고 있는 객체를 말함. 특히 클래스 메서드를 표현할 때 많이 쓰인다. 형태 def self.find -> 클래스 메서드 / def find -> 인스턴스 메서드 class User def self.find가 있다고 하면 클래스명.메서드명(User.find)로 호출이 가능함. 하지만 self가 없는 인스턴스 메서드는 u = User.new(유저 인스턴스 생성) 후에 u.find가능. 반대로 클래스 함수를 인스턴스 객체에서 호출하려고 하면 NoMethodError남. User.find만 가능. 그렇다면 인스턴스 메소드는 어떨때 사용하는가? 특정 인스턴스에 의존적인 때에 사용. ex) get/s.. 2019. 6. 18.
[Ruby] symbol과 string의 차이점 string은 데이터, symbol은 식별자 irb(main):001:0> :asdf.object_id == :asdf.object_id => true irb(main):002:0> "asdf".object_id == "asdf".object_id => false symbol의 특징 주로 메서드나 인스턴스 변수명을 표현할때 사용됨 hasy key로 사용되기도 함 immutable함 - 값 변경 불가, 덮어쓰기 가능, heap메모리에 생성되고나면 동일한 객체로 재사용 가능 반면 string은 mutable하므로 실제로는 동일한 값이라 해도 실행시점까지 알수가 없고, 메모리공간도 각각 차지함 그러므로 string보다 메모리 효율성/성능 측면에서 유리하다 2019. 6. 18.
call by value vs call by reference 함수를 호출할 때, 두 가지의 방식이 있다. Call by Value(값에 의한 호출) Call by Reference(참조에 의한 호출) C에서는 포인터 때문에 좀 더 중요하게 다뤄지는 것 같다. Ruby에서는 어떤 차이가 있을까? 내 경우, 눈으로 현상을 먼저 확인하는게 이해가 빨랐다. Ruby irb에서 실행한 결과다. # 변수의 값이 숫자일 때 irb(main):002:0> a = 0 => 0 irb(main):003:0> def add(int) irb(main):004:1> int = int + 1 # 들어온 값에 1을 더해주는 함수 irb(main):005:1> end => :add irb(main):006:0> add(a) => 1 irb(main):007:0> a => 0 # a의 값은 변.. 2019. 1. 14.
Java-2 : 조건문&반복문 조건문&반복문 입출력 받고 형변환Scanner sc = new Scanner(System.in);System.out.print("안내문");int money = sc.nextInt(); 조건문if(조건문){참일 경우 실행될 내용}->{}이 없을 땐 if(조건문)실행할 한문장; 도 가능 반복문* 반복문 : for** for (1.초기값 설정;2.조건식;3.값의증감) {* 4.조건식이 참일 경우에 실행할 문장* }* 5.for문을 벗어남** 1 - 2(참) - 4 - 3 -* - 2(참) - 4 - 3 -* - 2(참) - 4 - 3 -... 반복* - 2(거짓)- 5반복문에 이름붙이기(레이블, 라벨)name: for(){}사용법 : break 이름; ->멈추고 name 밖으로 나가기break; 만나면 빠져.. 2019. 1. 4.
Java-1 : 개요와 기초(~연산자) 자바의 특징 java언어의 특징-단순 : 가비지 콜렉터가 있어 메모리 관리가 쉽다-객체지향 : 재사용이 가능하다-컴파일+인터프리터 : 운영체제에 독립적이다개발자용 JVM용 컴퓨터용source -(compile)- byte code -(interprete)- 기계어.java .class binary java 분야J2SE(Standard)J2ME(Micro, PDA용)J2EE(Enterprize) 자바 기초 src와 binsrc : source폴더. java파일을 저장한다.bin : binary폴더. 컴퓨터가 이해하도록 컴파일된class파일을 저장한다. public class하나의 파일에는 여러 개의 클래스가 올수 있지만,public이 붙은 클래스는 하나만 있어야 한다.또한 public 클래스명은 파일명과 .. 2019. 1. 4.