어노테이션
@Deprecated
@SuppressWarnings 리턴타입이 bool 일때, 억지로 정의 ? 하는거
@Rentention
어노테이션 타입
생성자
결국 여러가지 선언 방법이 있다.
생성자는 override 되지 않는다.
생성자는 반드시 super 의 생성자를 호출해야한다.
defalt 생성자는 생략가능하다.
여기까지 생성자의 특징.
제어자
1. 제어자(modifier)
- 클래스, 변수, 메서드의 선언부에 사용되어 부가적인 의미를 부여한다.
- 접근제어자 : public, protected, default, private
- 그 외 제어자 : static, final, abstract, native, transient, synchronized, volatile, strictfp
- 하나의 대상에 여러 개의 제어자를 조합해서 사용할 수 있으나, 접근제어자는 단 하나만 사용할 수 있다.
abstract은 형식만 지정했기 때문에 생성자를 호출 안됨.
synchronized 는 메소드에만..
반드시 object를 잡는다.
무슨말이냐면
동시접근을 못하게 막을건데 Synchronized
해당하는 object의 메소드를 동시에 접근하지 못하게 막는것.
뒤에가서 설명함..
transient는 안씀
volatile 멀티쓰레드를 동시에 접근할때, 동기화 될때 동기화 안되도록하는거.
Default Contructor 기본 생성자
아무것도 없는 생성자
디폴트 생성자는 다른생성자와는 다르게 명시적으로 호출을 해줘야 하지만 이건 안해도 된다. 알아서 컴파일러가 해줌.
class A {
pulbic A (int x)
{
print "a"
}
}
class B{
public B(int x{
super(x);
print "b"
}
)
}
자바는 super 를 무조건 호출해줘야 한다.
super의 디폴트생성자를 호출하는 한에서 생략가능.
'AdvancedJava' 카테고리의 다른 글
final keyword (0) | 2016.07.05 |
---|---|
static Keyword (0) | 2016.07.05 |
한번 날라간 인터페이스 포스팅 (0) | 2016.07.05 |
용어정리 (0) | 2016.07.05 |
캡슐화,객체관계,상속,다형성,object vs class (0) | 2016.07.05 |