일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- 참조변수
- html form
- 스프링
- 김영한
- fielderror
- 코딩테스트
- JSON
- 테스트코드
- 백준
- 인터페이스
- objecterror
- 의존관계
- 오버라이딩
- 싱글톤
- DI
- 다형성
- 추상클래스
- 티스토리챌린지
- 오블완
- http 메시지 컨버터
- 코드트리
- 스프링컨테이너
- @configuration
- HttpServletResponse
- equals()
- ocp
- 서블릿
- 프록시
- 코드트리조별과제
- java
- Today
- Total
목록TIL/남궁성의 자바의 정석 (34)
minOS
ch7-22 캡슐화와 접근 제어자 - 캡슐화 캡슐화(encapsulation)는 객체 지향 프로그래밍(OOP)에서 중요한 개념 중 하나로, 데이터와 해당 데이터를 다루는 메서드를 하나로 묶어서 외부에서의 접근을 제한하는 것을 말한다. 이를 통해 객체의 내부 구현을 숨기고, 객체 간의 상호 작용을 보다 안전하게 만들 수 있다. - 접근 제어자 사용 접근 제어자(access modifier)는 캡슐화를 구현하는 데 사용되는 도구 중 하나로, 클래스의 멤버(변수, 메서드 등)에 대한 접근 권한을 제어하는 역할을 한다. 접근 제어자를 사용하여 클래스의 멤버에 대한 접근을 제한함으로써, 캡슐화를 강화하고 객체의 내부 구현을 안전하게 보호할 수 있다. Time 클래스의 각 멤버 변수와 메서드 캡슐화 class Ti..
ch7-21 접근 제어자 -private : 같은 클래스 내에서만 접근이 가능하다 -default: 같은 패키지 내에서만 접근이 가능하다 -protected: 같은 패키지 내에서, 그리고 다른 패키지의 자손클래스에서 접근 가능하다 -public: 접근 제한이 전혀 없다. //class는 public,default를 사용할 수 있다. class AccessModifierTest{ int iv; //인스턴스 변수 static int cv; //클래스 변수 void method(){} // 메서드 //멤버 변수들은 public, protected, defalut, private를 사용 할 수 있다. } 접근 권한 범위 public > protected > default > private 예시 접근 불가능한 ..
ch7-17 제어자(modifier) - 클래스와 클래스의 멤버(멤버변수,메서드)에 부가적인 의미 부여 접근제어자 : public,protected,(default),private 그 외 : static,final,abstract ... - 하나의 대상에 여러 제어자를 같이 사용 가능 단, 접근 제어자는 하나만 사용 가능 예시 public class ModifierTest { public static final int WIDTH = 200; // 제어자 순서는 상관없으나 접근제어자는 보통 가장 왼쪽에 쓴다. public static void main(String[] args) { System.out.println("WIDTH = " + WIDTH); } } ch7-18 static - 클래스의,공통적인 ..
ch7-15 import문 - 클래스를 사용할때 패키지 이름을 생략할 수 있다 - 컴파일러에게 클래스가 속한 패키지를 알려준다 class ImportTest{ java.util.Date date = new java.util.Date(); } 위의 코드는 import문을 통해 import java.util.Date; class ImportTest{ Date date = new Date(); } 이렇게 작성할 수 있다. -java.lang 패키지는 기본 패키지이기 때문에 이 패키지에 속한 클래스는 import하지 않고도 사용한다. 기본 패키지 클래스 예시)String,Object,System,Thread - import문 선언 방법 1)import 패키지명.클래스명; 2)import 패키지명.*; - im..
ch7-12 패키지 - 서로 관련된 클래스의 묶음 - 클래스는 클래스 파일 (*.class), 패키지는 폴더, 하위 패키지는 하위 폴더 -클래스의 실제 이름은 패키지를 포함 ex) java.lang.String rt.jar는 클래스들을 압축한 파일(JDK설치경로 ₩jre₩lib 에 위치) - Java9 기준 rt.jar 파일은 사라졌다. -> 모듈 개념으로 대체 ch7-13 패키지 선언 - 패키지는 소스 파일의 첫번째 문장으로 단 한번 선언 - 같은 소스 파일의 클래스들은 모두 같은 패키지에 속한다. -패키지 선언이 없으면 이름없는(unnamed)패키지에 속하게 된다. package javastudy; //패키지 선언 public class PackageTest { public static void ma..
ch7-10 참조변수 super - 객체 자신을 가리키는 참조변수, 인스턴스 메서드(생성자) 내에서만 존재 (static 메서드 내에 사용불가능) - 조상의 멤버를 자신의 멤버와 구별할 때 사용 class Parent { int x = 10; //super.x } class Child extends Parent{ int x =20; //this.x void method(){ System.out.println("x:"+x); System.out.println("this.x:"+this.x); System.out.println("super.x:"+super.x); } } public class Main { public static void main(String[] args) { Child child = ne..