3일차는 문제만 풀어서 따로 남길게 없었다.
문제풀이에 다 올리면서 다시 풀어볼 예정이다 주말 ㅋㅋ주말에 퐈이어!!!
3일 차 문제 풀이 팁!!
1.누적이 나오면 증감연산을 써야하는 판단
그리고 누적대상 만들어야함=>담을 변수 추가,
규칙을 찾아보자
2. 반복문 풀 때 쓰고있는 변수를 쓰고 하니씩 써보기 , 디버깅 쓰지 않기 !! 처음에는 생각하기
3. 소인수분해
2부터 시작해서 안나눠 질때까지 나눔
근본값은 결과값으로 변한다.
나눌 값과 내가 같은면 끝!!
코딩적으로 생각하면 이미 뒤에 배수는 나오기전에 다 처리가 되기때문에 결과적으로 소수만 남게됨.
클래스 선언하는 양식
접근권한 class 클래스명 {
내용
}
public class Test09s {
//어디서든 접근가능 클래스다 !!
}
파일 1개 - 클래스 n 개 가능하지만, 복잡해 파일 1하나당 클래스 1개다
클래스 명 권장사항: 대문자로 시작
클래스 사용 = 객체를 만든다.
객체 생성 을 하겠다 선언하면서 객체를 생성(호출가능 주소를 갖고있음),
변수명: 객체의 주소를 담은 것(직접 담기에 크기가 커 주소만 갖고있다)
동작 시에 변수명이 주소를 토대로 객체에게 a를 사용할게 연락하는 것!
해당 실행 시 받을 것이 생길 때 그 값을 지정한 것
Test09s ts = new Test09s(); //객체생성
Test09s ts2 = new Test09s(); //객체생성
//생성자 코드 예시
//기본형
public Test09s () {
System.out.println("기본생성자 실행중.");
}
//추가 생성자 (인자 포함)
public Test09s(String str) {//주는 쪽은 타입을 신경써야함
System.out.println("추가 생성자 : "+ str);
}
ts.a = 7;
ts2 = ts; //같은 주소값을 갖게된다.
System.out.println(ts.a); // test09s에 있는 a를 불러서 사용하겠습니다.
System.out.println(ts2.a);
ts.a();
System.out.println(ts.b("보낸 값")); //리턴 값이 호출된 ts.b("보낸 값") 으로 오는 것
ts2 = ts ; 동일한주소를 갖게됨
한번 끊어진 주소는 재사용 불가 주소를 모른다.
그리고 버려진 객체는 garbage Collector 알아서 청소
public void a() {
System.out.println("a 메소드 실행"); //출력기능만 있다.
}
public String b(String str) {
return "변경된 내용 : " +str;
}
public void plus(int a, int b) {
System.out.println("더하기 : "+(a+b));
}
public int plus2(int a, int b) {
return a+ b;
}
//실제 사용 예시
ts.plus(3, 7);
System.out.println(ts.plus2(5, 2));
반환타입 : 어떤 것이든 올 수있다. 단, 존재하지 않을 경우 void
오늘은 클래스,생성자,메소드에 대해 배웠다. 굉장히 중요하다는데,개념이 아리송하게 잡혀있다. 꾸준히 공부해가면서 차분히 정리해야겠다.
특히 그놈의 객체가 뭔지 ㅋㅋㅋ문제 풀러가자