'잡동사니'에 해당되는 글 12631건

  1. 2014.03.18 java collection
  2. 2014.03.18 java generic
  3. 2014.03.18 cpp static 변수 및 메소드
  4. 2014.03.18 cpp scope 연산자
  5. 2014.03.17 java static import
  6. 2014.03.17 w3c 규격 번역
  7. 2014.03.17 java inner class / anonymous class
  8. 2014.03.17 autolisp
  9. 2014.03.17 ATC 2급 2전 1패 1승!! 2
  10. 2014.03.16 winulator - 안드로이드 window 에뮬레이터
Programming/Java2014. 3. 18. 18:17
collection은 cpp로 치면.. STL?
제너릭스(generics)를 이용해서 만든 자료구조이다.

Set  / List / Queue / Map이 주로 사용되며,
4개는 interface로 implement 되어 각각에 대해 패키지를 제공하게 된다.
Set - HashSet / TreeSet
List - Stack / Vector / ArrayList
Queue - LinkedList
Map - HasMap

[링크 : http://docs.oracle.com/javase/7/docs/api/java/util/Set.html]
    [링크 : http://docs.oracle.com/javase/7/docs/api/java/util/HashSet.html]
[링크 : http://docs.oracle.com/javase/7/docs/api/java/util/List.html]
    [링크 : http://docs.oracle.com/javase/7/docs/api/java/util/Stack.html]
    [링크 : http://docs.oracle.com/javase/7/docs/api/java/util/Vector.html]
    [링크 : http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html]
[링크 : http://docs.oracle.com/javase/7/docs/api/java/util/Queue.html]
    [링크 : http://docs.oracle.com/javase/7/docs/api/java/util/LinkedList.html]
[링크 : http://docs.oracle.com/javase/7/docs/api/java/util/Map.html]
    [링크 : http://docs.oracle.com/javase/7/docs/api/java/util/HashMap.html]

[링크 : http://docs.oracle.com/javase/tutorial/collections/interfaces/index.html]
[링크 : http://docs.oracle.com/javase/tutorial/collections/implementations/index.html]


>>>>
set(interface)
-> HashSet / TreeSet(implements)
set - 정렬되지 않음 / 중복 허용하지 않음 (대소문자 구별함)

>>>>
 List(가장 많이 씀 / array와 유사함)
- Stack / Vector / ArrayList (stack은 별로 사용하지 않음)

Stack - push / pop

Vector
 new Vector<String>(2,5) // 초기 2개, 확장 시 5개씩 확장
contains() remove() cacacity() size()
trimToSize() // 메모리 공간 줄이기

>>>>
Queue
- LinkedList 
offer() // push() 개념
poll() // pop() + 삭제

collection - interface
collections - class

>>>>>>
Map
-  HashMap
put()// 저장
get() // 꺼내기

ArrayList / HashMap을 많이 씀

Iterator(반복자)
- hasNext() remove()

---
2014.03.21 추가
결국에 Collection 하위는 Collection과 Iterable의 상속관계이며
toArray를 통하거나 Iterator를 통해서 상호 변환이 가능하다.

public interface Collection<E> extends Iterable<E>
- Object[] toArray()
- <T> T[] toArray(T[] a)
Iterator<E> iterator()
=======================================================
public interface Iterator<E>
- boolean hasNext()
- E next()
- void remove()
=======================================================


public interface Set<E> extends Collection<E>
public interface List<E> extends Collection<E>
public interface Queue<E> extends Collection<E>
public interface Deque<E> extends Queue<E>
public interface Map<K,V>
=======================================================
>> public interface Set<E> extends Collection<E>
public abstract class AbstractSet<E> extends AbstractCollection<E> implements Set<E>
public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, Serializable
public class TreeSet<E> extends AbstractSet<E> implements NavigableSet<E>, Cloneable, Serializable
public class LinkedHashSet<E> extends HashSet<E> implements Set<E>, Cloneable, Serializable

>> public interface List<E> extends Collection<E>
public class Vector<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, Serializable
public class Stack<E> extends Vector<E>
public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, Serializable
public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>, Cloneable, Serializable 


 

'Programming > Java' 카테고리의 다른 글

java thread  (0) 2014.03.19
java 날짜 관련 패키지  (0) 2014.03.19
java generic  (0) 2014.03.18
java static import  (0) 2014.03.17
java inner class / anonymous class  (0) 2014.03.17
Posted by 구차니
Programming/Java2014. 3. 18. 18:05
collection - c/cpp의 자료구조
generic은 jdk 1.5.0 부터 지원됨

해당 패키지를 사용하기 위해서는 java.util을 포함해야 함.
import java.util.*;  

제너릭스 (Generics)
API문서에 4개의 식별자가 존재한다. <T,E,K,V>
Type
Element
Key
Value

사용방법은 다음과 같으며, cpp의 template와 거의 유사하다.
class className <T>
{
    T[] v;
}

className<String> t = new className<String>(); 

[링크 : http://docs.oracle.com/javase/7/docs/api/java/util/package-summary.html]


자바는 타입을 강하게 확인하지만 유연성을 위해 몇가지 확장 키워드를 제공한다.

<?> // 클래스 타입 상관없음
<? super class> 해당 클래스의 상위 클래스까지 허용 (본인 클래스는 포함되지 않음)
<? extends class> 해당 클래스의 하위 클래스만 적용 (본인 클래스는 포함되지 않음) 


'Programming > Java' 카테고리의 다른 글

java 날짜 관련 패키지  (0) 2014.03.19
java collection  (0) 2014.03.18
java static import  (0) 2014.03.17
java inner class / anonymous class  (0) 2014.03.17
java private constructor  (0) 2014.03.14
Posted by 구차니
Programming/C++ STL2014. 3. 18. 13:05
static 멤버 변수는 클래스 공용변수로 적용되며(global shared variable scope on class)
static 멤버 메소드는
객체로 생성하지 않아도(new) 실행이 가능한 함수이다.

일단.. static 멤버 변수는
아무래도... 공용데이터로 인해서 동기화나 데이터 의존성이 문제가 될 수 있으므로 되도록이면 안쓰는게 좋을것 같고
static 멤버 메소드는 instance 로 만들지 않고 객체 단위로 함수들을 정리할때 유용할 것으로 생각된다.

They cannot access nonstatic class member data using the member-selection operators (. or –>).
They cannot be declared as virtual.
They cannot have the same name as a nonstatic function that has the same argument types.

[링크 : http://msdn.microsoft.com/ko-kr/library/yyh8hetw.aspx] 멤버 메소드
[링크 : http://msdn.microsoft.com/ko-kr/library/s1sb61xd.aspx] 멤버 변수

함수 인자나 지역변수는 스택에 생성되고
static 변수는 data 영역에 선언되므로
data 영역에는 프로그램이 실행중에는 스택과 같이 임시로 사용되는게 아니기에 데이터가 유지되는 특징을 지닌다.

[링크 : http://sfixer.tistory.com/30

'Programming > C++ STL' 카테고리의 다른 글

c++ 현변환 연산자(cast operator in c++)  (0) 2015.01.26
functor / 펑터  (0) 2014.04.16
cpp scope 연산자  (0) 2014.03.18
cpp class에서 변수값을 미리 선언 못하는 이유  (0) 2014.03.15
cpp 와 java의 차이점(문법)  (0) 2014.03.14
Posted by 구차니
Programming/C++ STL2014. 3. 18. 10:11
cpp에 scope 연산자를 이용하면
클래스 내의 변수에 접근하는데 사용할 수 있으나 (class::variable 혹은 class::memberfunc)
클래스가 아닌 곳에서 그냥 ::만 사용할 경우 글로벌 변수를 접근할 수 있다.

int error;
void Error(int error)
{
    if(::error != 0) ; // global error
}
[링크 : http://www.pragsoft.com/books/CppEssentials.pdf] 62쪽

'Programming > C++ STL' 카테고리의 다른 글

functor / 펑터  (0) 2014.04.16
cpp static 변수 및 메소드  (0) 2014.03.18
cpp class에서 변수값을 미리 선언 못하는 이유  (0) 2014.03.15
cpp 와 java의 차이점(문법)  (0) 2014.03.14
cpp 디폴트 매개변수  (0) 2014.03.12
Posted by 구차니
Programming/Java2014. 3. 17. 20:11
JDK 1.5.0부터 추가된 import static은
c++의 using namespace와 같은 역할을 한다.

아래의 문장이
double r = Math.cos(Math.PI * theta); 
 
이렇게 축약될 수 있다.
import static java.lang.Math.PI;
import static java.lang.Math.*;
double r = cos(PI * theta); 


타이핑이 줄어서 편할수도 있지만 
물론 이렇게 name space를 파괴하면서 다른 패키지와의 충돌이나
가독성(System.out.println이 워낙 익숙한데 out.println이라고 쳐놓으면.. )의 문제로
그리 많이 쓰이진 않는 듯 하다. 

[링크 : http://docs.oracle.com/javase/1.5.0/docs/guide/language/static-import.html]

'Programming > Java' 카테고리의 다른 글

java collection  (0) 2014.03.18
java generic  (0) 2014.03.18
java inner class / anonymous class  (0) 2014.03.17
java private constructor  (0) 2014.03.14
java abstract / interface & cpp virtual  (0) 2014.03.14
Posted by 구차니
Programming/web 관련2014. 3. 17. 19:53
HTML / CSS 등에 대해서 잘 번역되어 있는 사이트

[링크 : http://trio.co.kr/]

'Programming > web 관련' 카테고리의 다른 글

ie8 과 크롬의 html 태그 파싱 차이점  (0) 2014.04.10
NoSQL  (0) 2014.04.09
wan 에서 mac address 얻기  (0) 2013.07.09
축약주소 만들기 서비스  (0) 2013.07.08
php-mobile-detect  (0) 2013.02.23
Posted by 구차니
Programming/Java2014. 3. 17. 19:49
inner class는
class 안에 class를 생성하여
클래스 안에서만 사용하도록 하는 일종의 임시 객체이다. 

inner class
  - staic inner class
method class
anonymous class

inner Class의 제약사항
변수 중에 static이 하나라도 있으면 static class가 되어야 함

method 안에서 선언할 경우 Local Class라 하며,
static 멤버 변수가 선언될 수 없으며 또한, static Local Class가 될 수 없다.

outer.this.var 식으로 inner 클래스의 외부 클래스 변수에 접속할 수 있다.

inner class에서 static 변수에는 (외부 클래스의) static 변수만이 할당가능하다.

public class InnerEx2 {

class InstanceInner {
}

static class StaticInner {
}

InstanceInner iv = new InstanceInner();
static StaticInner cv = new StaticInner();

static void staticMethod()
{
StaticInner obj2 = new StaticInner();

// InstanceInner obj1 = new InstanceInner();
InnerEx2 outer = new InnerEx2();
InstanceInner obj1 = outer.new InstanceInner();
}
} 
내부 클래스에서 다른 내부 클래스를 선언시
외부 클래스.new 내부 클래스(); 식으로 선언할 수 있다.

void myMethod()
{
int lv = 0;
final int LV = 0;

class LocalInner {
int liv = outerIv;
int liv2 = outerCv;
// int liv3 = lv; <<
int liv4 = LV;
}
}
method내의 Local Class에서는 메소드 내의 변수를 사용할 수 없다.
(메소드가 메모리에 올라가서 구획이 생성되기 전이기에)

Object iv = new Object() {void method() {}};
anonymous class 에서의 메소드 정의

public static void main(String[] args)
{
// TODO Auto-generated method stub
Button b = new Button("Start");
b.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.out.println("ActionEvent occurred!!!");
}
});
} 

instanceof
객체 instanceof class 식으로 사용하며, 상속관계에 있을 경우
해당 객체가 상위 객체를 포함하므로 instanceof에서 true가 되지만
상위 객체를 하위 객체로instanceof 할 경우 false가 된다.

'Programming > Java' 카테고리의 다른 글

java generic  (0) 2014.03.18
java static import  (0) 2014.03.17
java private constructor  (0) 2014.03.14
java abstract / interface & cpp virtual  (0) 2014.03.14
Java / cpp - 다형성(polymorphism) 차이점 (동적 바인딩?)  (0) 2014.03.13
Posted by 구차니
프로그램 사용/autocad2014. 3. 17. 14:20

'프로그램 사용 > autocad' 카테고리의 다른 글

원 채우기  (0) 2018.05.01
캐드 명령어 이것저것  (0) 2018.01.09
autocad 명령어  (0) 2018.01.08
AutoCad 2011 도움말 - 명령어  (0) 2014.01.17
Autocad 학원 수강 3일차  (0) 2014.01.17
Posted by 구차니
한번 떨어지고 이번에는 합격!!
1급보고 붙으면 1급 발급받을까나
2급 발급도 2만원이라 ㅠㅠ

아무튼 1급은 바로신청할까 어쩔까 고민되네 ㅠㅠ


'개소리 왈왈 > 직딩의 비애' 카테고리의 다른 글

직장은 소식이 없고..  (0) 2014.07.20
지갑도 가벼워지고...  (0) 2014.04.17
끄아아 내 6만원 ㅠㅠ 아니 12만원?  (0) 2014.03.03
솔데스크 C언어 통합 1일차  (0) 2014.02.24
ATC 2급 시험  (0) 2014.02.22
Posted by 구차니
wine의 안드로이드 포팅같긴한데..
지하철에서 핸드폰으로 스타를 하길래 먼가하고 찾아봤더니
wine과 유사하지만 포팅은 아니라고 한다.
Q: What is Winulator?

A: Winulator is an Android app that provides a run-time platform for Windows programs. It is similar in a sense to Wine, how it is not a port of Wine. It is currently under development.

[링크 : http://docs.winulator.com/faq

일단 시저 3만 정식 지원이고
스타크래프트 : 브루드워는 패치로 이제 베타 지원중이라고 한다.
 The following is a list of programs and games that are tested on the Winulator platform. For each page there are detailed instructions on how to set it up.

WORK IN PROGRESS:

[링크 : http://docs.winulator.com/programs]

[링크 : http://www.winulator.com/]



Posted by 구차니