본문 바로가기

학원 일기/학원-JAVA

자바16일차

1.과제복습 (내가애먹은날)

String만 불변클래스지 참조형변수라해서 전부다 불변클래스는 아닌것같다 라는 생각을한날(아직확인은 못함)

 

2.static 

 

static변수는 b가 조금 기울었음 ㄷㄷ..

 


 * static은 클래스 외부에 1개 생성됩니다.라는  의미를 갖습니다.
 * 그래서 static변수는 객체와 상관없기 때문에
 * 
 * 클래스이름.변수명으로 사용할수 있습니다.
 * 
 * 그니까 객체생성없이 바로사용가능하단 뜻
 */

 

static 메서드안에서는 non-static멤버를 객체 생성없이 참조할수 없다, 보면 main도 static인데 nonstatic 객체생성통해서 잘만 가져다 쓰고있음

 

//일반메서드안에서 일반멤버변수,static멤버변수도 모두 사용이가능함

 

main에 static을쓰는 이유중 하나로또 다른 static메서드를 쓰기위해서이기한걸 깨달았다애먹은날)

 

 

main에 static을쓰는 이유중 하나로또 다른 static메서드를 쓰기위해서이기한걸 깨달았다

 

(중간에 static클래스 내용보는법도 보여줬음 )

 

static

{

내용

}                          <<<<<<<<<<<<<<< 이렇게 static 초기화자도있음  

 

그냥보고가자

 

3.final

 

* 클래스에 사용시 상속불가

* 메서드에 붙으면 오버라이딩 불가

*변수는 값변경 불가 처음초기화는 당연히 가능함 (초기화 필수임 안하면 에러뜸)

 

 

4.불변의 값을 저장하는 필드를 상수 라고 부른다!

 

 

 

 

 

 

 

상수이름은 모두대문자로 작성하며 연결된단어는 "_" 로 연결 

 

 

 

5.abstract (많이도 하는날 ㅠ)

 

 

 

다형화처럼 생각이들기도했지만 공통적으로 필요한기능을 만들어놓고 쓰기위한거기때문에

 

다르다

 

 

 

* 객체생성줄가

 

 

 

*추상메서드는 추상클래스 내에서만 선언가능

 

 

 

* 추상클래스를 설계할때 자식클래스가 추상클래스 메소드를 쓰고싶으면 꼭 오버라이딩해야한다

 

 

 

*오버라이딩 을하지않았을때 부모님꺼를 쓴다(근데 꼭 오버라이딩후 재정의를해서 써야하는상황이였다면? < 이상황때문에 추상클래스를 쓴다 라는것도 사용하는 이유중하나)

 

 

 

*public abstract void apple(); <<메소드는 요런형태로 사용함

 

*public abstract class ParentStore << 클래스는 이런형태로 사용함 

 

 

 

*추상클래스도 생성자가 있다 

 

 

 

*추상클래스를 상속받았을경우 추상메소드가 불안전하기때문에 일반클래스에서는 오류가날수밖에없다

 

두가지방법이있는데 추상클래스로 만들거나 ,오버라이딩을 해야한다 << 근데 추상클래스의 사용목적을 생각하면

 

오버라이딩을해서 쓰는것이 당연히옳다

 

 

 

추상에서도 일반메소드,일반 멤버변수, 생성자 모두사용가능함

 

 

'학원 일기 > 학원-JAVA' 카테고리의 다른 글

자바18일차  (0) 2021.03.11
자바17일차  (0) 2021.03.10
개인자바 공부하면서 배우는것들 4주차  (0) 2021.03.08
자바15일차  (0) 2021.03.08
개인자바공부 3주차 2번쨰  (0) 2021.03.08