Position 속성값
position: <속성값>;
속성값 | 설명 |
---|---|
static | 기본 흐름에 따라 배치 |
relative | 좌표 속성 사용 가능 |
absolute | 절대 좌표 위치에 배치 |
fixed | 절대적인 좌표 위치에 배치. 스크롤해도 고정 |
sticky | 지정한 좌표의 임계점에 이르면 fixed로 화면 고정 |
z-index | 요소의 앞뒤 배치. 더 큰 숫자는 맨 앞 배치 |
relative
.green-box{
background-color: green;
position: relative;
left: 100px;
top: 100px;
}
- top
- right
- bottom
- left
요소의 왼쪽 위 모서리가 기준점
absolute
웹 브라우저의 왼쪽 위 모서리가 기준점
.blue-box{
background-color: blue;
position: absolute;
left: 200px;
}
fixed
스크롤을 하여도 위치가 고정된다.
absolute는 스크롤을 하면 위치가 이동한다.
.yellow-box{
background-color: yellow;
position: fixed;
left: 50px;
top: 200px;
}
sticky
.pink-box{
background-color: pink;
position: sticky;
top: 0;
}
Java
Interface
public interface 이름 {
public static final 상수 필드(변수)
public 추상, 디폴트, 정적 메서드
private 메서드, 정적 메서드
}
구현 클래스
implements
public class B implements interfaceA {}
인터페이스의 추상 메서드를 재정의한 메서드가 있다.
상수 필드(변수) static final
static final 이름 = 값
인터페이스에 선언된 필드는 모두 public static final 특성을 갖는다.
생략하더라도 자동적으로 컴파일 과정에서 추가된다.
추상 메서드
메서드 선언부만 있고 실행부{}가 정의되어 있지 않은 메서드
public abstract을 생략하더라도 자동적으로 컴파일 과정에서 추가된다.
interface A{
public abstract void turnOn();
}
class B implements A {
@Override
public void turnOn(){};
}
인터페이스의 추상 메서드는 public 접근 제한을 갖기 때문에 public 보다 더 낮은 접근 제한으로 재정의할 수 없다.
디폴트 메서드
default 키워드가 리턴 타입 앞에 붙는다.
[public] default 리턴 메서드이름 (매개변수, ...) {...}
디폴트 메서드는 구현 객체가 필요하다.
상수 필드, 추상 메서드 호출이 가능하다.
public interface RemoteControl {
// 상수 필드 (static final)
int MAX_VOLUME = 10;
int MIN_VOLUME = 0;
// 추상 메서드 (public abstract)
public abstract void turnOn();
public abstract void turnOff();
public abstract void setVolume(int volume);
// 디폴트 메서드 (public default)
public default void setMute(boolean mute){
if(mute){
System.out.println("무음 처리 합니다.");
setVolume(MIN_VOLUME);
}else{
System.out.println("무음 제거합니다.");
}
}
}
구현 클래스에서 디폴트 메서드를 재정의할 수 있다.
반드시 public을 붙이고 default는 생략해야 한다.
정적 메서드
구현 객체 없이 인터페이스로 정적 메서드 호출 가능하다.
public을 생략하더라도 컴파일 과정에서 자동으로 추가된다.
[public | private] static 리턴 메서드이름 (매개변수) { }
private 메서드
구분 | 설명 |
---|---|
private 메서드 | 구현 객체가 필요. 디폴트 메서드에서만 호출 가능 |
private static 메서드 | 구현 객체가 필요 없음. 디폴트 메서드, 정적 메서드에서 호출 가능 |
다중 인터페이스 구현
구현 객체는 여러 개의 인터페이스를 구현할 수 있다.
public class 클래스이름 implements A, B (){}
인터페이스 상속
public interface 자식인터페이스 extends 부모인터1, 부모인터2 { ... }
다중 상속이 가능하다.
자식 인터페이스의 구현 클래스는 자식 인터페이스의 메서드, 부모 인터페이스의 메서드를 재정의 해야 한다.
Refs
interface
'TIL' 카테고리의 다른 글
[TIL] CSS Flex, Grid 문제 (1) | 2023.10.15 |
---|---|
[TIL] CSS Flex, Grid / Java Exception (0) | 2023.10.13 |
[TIL] Java Final 상수, 접근 제한자, 싱글톤 패턴, 상속, super(), 메서드 오버라이딩, 상속 클래스 타입 변환, 메서드 오버라이딩 예외 (0) | 2023.10.11 |
[TIL] CSS 선택자, 가상요소, 우선순위 / Java 클래스, 생성자, this, 인스턴스, static 멤버 (1) | 2023.10.10 |
[TIL] HTML: Form, Table / Java: Reference type (2) | 2023.10.05 |