일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 자료구조
- 잡담
- Qt OpenGL
- Qt 소켓프로그래밍
- 오토바이
- vuejs
- 엑티브엑스
- 정성하
- FFI
- 고속도로
- QT
- QTcpServer
- 스타2
- 윈도우7
- Qt4
- 디자이어HD
- 알람프로그램
- Java
- 안드로이드
- 바이크
- 재귀함수
- 자바
- 마영전
- 이륜차
- c언어
- 양평역
- android SAF
- HTML
- 스타크래프트2
- qt 설치
- Today
- Total
목록분류 전체보기 (574)
프로그래밍과 잡담
Qt 4.5가 나왔다.. 인제야 알았네.. 어쨌뜬 이번 4.5부터는 LGPL라이센스를 적용을 한다고 한다. 라이센스 중에는 상업용과 GPL , LGPL 이 있는데 GPL은 General Public License 의 약자로 프로그램을 개발시. 소스를 공개를 해야하는 의무가 있다. 공개안하면 걸린다. LGPL은 소스를 공개를 안해도 상관 없는 라이센스다. 소스 공개때문에 이걸 쓰길 고민했던 회사들은 인제 마음껏 쓰면 되겠다.
이건 자바에도 공통이다.. 오버로딩이란? int max(int x, int y) { if( x > y) return x; else return y; } 이런 함수가 있다 치면 이걸 오버로딩을 하면 이리 된다. float max(float x, float y) { if( x > y) return x; else return y; } 이렇게 하는게 오버로딩이다. 이름은 같은데..하는 짓이 틀린게 오버로딩 오버라이딩은 상속을 받으면 상속 받은 메소드를 바꾸는 짓을 오버라이딩이라 한다. class Point { public: int max(int x,int y); }; class A : public Point { public: int max(int x, int y) { return x; } } 이런걸 오버라이딩이..
상속이란 부모 클래스가 가진것을 사용하겠다는 의미이다.. 사용법은 class 클래스이름 extends 클래스이름 { } 이런식으로 사용을 한다. 단 자바에서는 다중상속이 불가능하다. 그래서 만든게 implements라는것이다. 자바는 다중상속이 안되기때문에 implements 통해서 상속을 받는다. implements는 extends와는 다르게 interface만 가능하기때문에 메소드를 재정의 해줘야한다.
abstract class 클래스이름{ abstract 리턴타입 메소드이름(); } 추상클래스의 사용법이다. 추상클래스는 함수의 이름만 정의 하면 된다. 추상클래스는 추상 메소드를 가지고 있어야한다. 추상클래스는 추상 클래스만 가지고 사용이 불가능하다. 자식클래스가 추상클래스를 상속받아서 오버라이딩을 시켜주어야한다. 오버라이딩이란 부모가 가진 메소드를 재정의하는것을 오버라이딩이라한다.
public, protect, private의 의미 맴버 변수나 메소드에 public을 붙이면 모든 곳에서 접근이 가능해진다. 고로 중요한 변수를 public으로 붙이는 사태는 없어야한다.. private는 클래스 내부에서만 접근이 가능하다. 그 이외에서는 접근이 불가능하다. protected도 private와 비슷하지만 다른 점은 상속을 받은 자식 클래스에서 접근이 가능하다. 표로 만들면 이런식 종류 public private protected 자식클래스 O X O 모든 클래스 O X X 내부 함수 O O O
다른다 넘어가고 클래스 만들기 class 클래스 이름 { } 이러면 클래스 완성. 물론 아무 기능도 없는 쓸모 없는 클래스 class 클래스 이름 { private int a; public void print(); } C++에서는 private: int a; public: void print(); 이런식으로 사용하는데 자바에서는 하나 하나 다 앞에 private,protected,public을 붙여줘야한다. 자바도 생성자가 있다 class Test { Test(); } 이렇게 클래스의 이름을 넣으면 생성자를 만드는거다.. 소멸자도 있긴한데 자바에서는 별 의미 없다. c++경우는 소멸자를 안하면 큰일이지만 자바는 JVM이라는게 있어서 알아서 처리한다.
"A L'aube Du Dernier Jour" (F. Kleynjans) - "Attente" 1악장 Attente 끌레양의 작곡 마지막의 아침이라는 곡입니다. 1악장은 사형수가 사형을 기다리는 중입니다. "A L'aube Du Dernier Jour" (F. Kleynjans) - "A L'aube" 2악장 "A L'aube" 2악장은 사형을 알리는 6시 종소리가 울리고 간수가 죄수를 데려갑니다. 죄수는 끌려가며 자신의 삶을 회상합니다. 종소리를 내는게 참 인상적이네요. 뭔가 섬뜩한 느낌....
자바의 입력출력 System.out.println("안녕하세요"); println 이 도스창에 출력을 해주는 역활을 하는 함수이다. 변수를 출력하고 싶으면 그냥 int a = 100; System.out.println(a); 이렇게 쓰면 자동으로 a의 값이 나온다. 100 하고 print는 출력이라는 거고 ln은 출력하고 한줄내리라는 의미다. print만 쓰면 한줄을 안띄운다. 그리고 자바는 C에서 있는 문법을 가져와서 printf도 지원을 한다. int a = 100; System.out.printf("%d", a); 이런식으로 사용된다. System 이라는 클래스는 모든 맴버가 다 static이라서 System.메소드이름 해서 접근이 가능하다. 궁금하면 api를 보면 된다. 위치는 http://jav..
형변환 (casting) C에도 형변환이라는게 있다. 자바에도 있다. 사용법은 둘다 같다. float t; int i = 10; int j = 20; t = i + j; 이런식으로 하면 자동으로 형변환이 된다. 하지만 강제적으로 형변환을 하는게 있다. float f = 3.231f; System.out.println((int)f); 이런식으로 사용하면 출력값은 3만 나온다. (자료형)변수명이 '(' ')' 소괄호가 형변환 역활을 한다.
C에서도 변수가 있고 자바에도 변수가 있다. Java에서 쓰이는 변수는 논리형 boolean 정수형 byte, char, int, long, short 실수형 float, double 클래스형 String 여러가지의 변수가 있다.. boolean True와 False를 사용할때 쓰인다 크기는 1byte char는 글자한개를 저장하는 변수다. 크기는 2byte byte는 정수형태를 저장하는 변수다. 크기는 1byte int는 숫자를 저장하는 변수다. 크기는 4byte float는 소숫점이 있는 변수다. 크기는 4byte double은 float와 같지만 범위가 더 크다. 크기는 8byte long은 정수형태의 타입을 저장하는 변수다 크기는 8byte short는 정수형태의 타입을 저장하는 변수다 크기는 2..