본문 바로가기

Dev/Java27

[Java] 자바의 정석 기초편 ch7-17~20 제어자, static, final, abstract ch7-17 제어자(modifier) - 클래스와 클래스의 멤버(멤버 변수, 메서드)에 부가적인 의미 부여 접근제어자 public, protected, (default), private 그 외 static, final, abstract, native, transient, synchronized, volatile, strictfp - 하나의 대상에 여러 제어자를 같이 사용가능 ( 접근제어자는 4개 중에 1개만 붙임 ) public class ModifierTest { public static final int WIDTH = 200; public static void main(String[] args) { System.out.println("WIDTH=" + WIDTH); } } ch7-18 static -.. 2022. 6. 15.
[Java] 자바의 정석 기초편 ch7-15,16 import문, static import문 ch7-15 import문 - 클래스를 사용할 때 패키지이름을 생략할 수 있다. - 컴파일러에게 클래스가 속한 패키지를 알려준다. => 이클립스 import 단축키 - ctrl+shift+o class ImportTest { java.util.Date today = new java.util.Date(); //... } //---> 패키지 이름 생략가능 import java.util.Date; class ImportTest { Date today = new Date(); } - java.lang 패키지의 클래스는 import하지 않고도 사용할 수 있다. - 기본 패키지임 ex) String, Object, System, Thread ... import java.lang.*; // * 모든 클래스 class.. 2022. 6. 13.
[Java] 자바의 정석 기초편 ch7-12~14 패키지(package), 클래스 패스 ch7-12 패키지 (package) - 서로 관련된 클래스의 묶음 - 클래스는 클래스 파일(*.class), 패키지는 폴더, 하위 패키지는 하위 폴더 - 클래스의 실제 이름(full name)은 패키지를 포함(java.lang.String) = java 패키지 안의 하위폴더 lang 폴더 안의 String.class - rt.jar(runtime 실행할때 필요한 클래스파일을 묶어놓은 것) 는 클래스들을 압축한 파일(JDK설치경로 \jre\lib에 위치) java 9부터 module 개념 rt.jar 없어짐 ch7-13 패키지의 선언 - 패키지는 소스파일의 첫 번째 문장으로 단 한번 선언 - 같은 소스파일의 클래스들은 모두 같은 패키지에 속하게 된다. - 패키지 선언이 없으면 이름없는(unnamed) 패.. 2022. 6. 13.
[Java] 자바의 정석 기초편 ch7-10,11 참조변수 super, 생성자 super() ch7-10 참조변수 super = this 와 비슷- lv와 iv를 구별할 때 사용 - 객체 자신을 가리키는 참조변수. 인스턴스 메서드(생성자)내에만 존재 = static 메서드 내에서 사용 불가 - 조상의 멤버(super)를 자신의 멤버(this)와 구별할 때 사용 class Ex7_2 { public static void main(String args[]) { Child c = new Child(); c.method(); } } class Parent { int x = 10; /* super.x */ } class Child extends Parent { int x = 20; // this.x void method() { System.out.println("x=" + x); // x는 가까운 쪽 t.. 2022. 4. 25.