목록개발/Java (26)
그저 내가 되었고
변수의 초기화란? -> 변수를 선언하고 처음으로 값을 저장하는 것 -> 필수적/선택적 케이스 모두 존재. 가능하면 선언과 동시에 초기화하는것이 바람직 멤버변수(클/인 변수)의 초기화 -> 멤버변수는 초기화 안해도 자동적으로 변수의 자료형에 맞는 기본값으로 초기화가 이루어지므로 굳이 안해도 됨 멤버변수의 초기화 방법 1) 명시적 초기화 explicit initialization 2) 생성자 constructor 3) 초기화 블럭 initialization block - 인스턴스 초기화 블럭: 인스턴스변수 초기화에 사용 - 클래스 초기화 블럭: 클래스변수 초기화에 사용 지역변수의 초기화 -> 지역변수는 사용 전에 반드시 초기화해야 함 class Initialization { int x;//iv int y =..
접근 제어자 (Access Modifier) = 클래스, 변수, 메서드의 접근 권한 정의 키워드. public: 모든 접근 허용 protected: 같은 패키지(폴더) 내 객체와 상속 관계의 객체들만 허용 default: 같은 패키지(폴더) 내 객체들만 허용 private: 같은 클래스 내에서만 허용 일반적으로 많이 쓰이는 건 public, private이다. 클래스 (Class) = 객체를 찍어낼 수 있는 틀. 메서드 (Method) = 클래스 내부에 정의된 함수. = 특정 작업을 하기 위한 명령문의 집합. 자바가 실행되면 main() 메서드를 제일 먼저 찾아 그 안의 것들을 순차적으로 실행하기 때문에 다른 메서드를 만들고 싶다면 main() 메서드 안에서 호출해야 한다. Static 변수나 메서드가 ..
자바의 변수 자바에서 변수는 클래스 변수, 인스턴스 변수, 지역 변수 총 세 종류가 있습니다. 세 종류의 변수들을 구분 짓는 가장 중요한 요소는 변수의 선언된 위치입니다. (앞으로 클래스, 인스턴스 변수를 통틀어 부를 때 멤버변수멤버 변수라고 부르겠습니다.) 멤버 변수를 제외한 나머지 변수들은 모두 지역 변수이며, 멤버변수 중 static이 붙은 것은 클래스 변수, 붙지 않은 것은 인스턴스 변수라고 합니다. 참 단순하죠? 아래의 코드를 보시면 Happy클래스 내부에 총 3개의 int형 변수가 선언되어 있습니다. first와 second변수는 클래스 영역에 선언되어있으므로 멤버 변수입니다. 그 중 second 변수는 변수 명 앞에 static 키워드가 함께 선언되어 있으므로 클래스 변수이며 first는 인..
상속 - 1 개괄 아래 보면 위에꺼가 밑에꺼의 부모. 위에꺼를 그대~로 상속받고 거기다가 원하는걸 추가하는거임. java.lang.Object java.io.Writer java.io.PrintWriter 자바의 가장 기본적인 클래스는 오브젝트클래스. 모든 클래스는 오브젝~을 반드시 상속받음. 상속받을 때 쓰는 키워드가 extends(PrintWriter extends Writer 이렇게 씀) 상속 - 2 Overriding & Overloading * Overriding: (부모 클래스를 자식 클래스의) 등에 업는다는 사전적 의미. 상속의 개념으로 부모 클래스에 있는 메소드나 변수를 extends를 통해 굳이 같은 형태의 메소드를 입력하지 않아도 부모클래스에 있는 메소드를 끌어다 쓸 수 있는 기능이다...
OOP - 6 Static / 스태틱 class Foo를 만들고 ✔static String classVar = "I class var" →변수 하나의 이름은 classVar고, 앞에 static이 붙어 있으므로 얘는 class 소속. System.out.println(Foo.classVar); // OK ✔String instanceVar = "I instance var" →또 하나는 instanceVar라는 이름의 변수인데, 얘는 앞에 static이 없으므로 instance 소속. System.out.println(Foo.instanceVar); // Error (클래스 통해서 직접 인스턴스에 접근할 수 없음) ✔static classMethod System.out.println(classVar); /..