본문 바로가기
728x90

전체 글389

JAVA) 자바의 정석 기초편 7-2 연습문제 풀이 자바의 정석 기초편 7-1에 이은 7-2의 연습 문제를 풀어보았습니다 Q) 연습문제 7-1의 SutdaDeck 클래스에 다음에 정의된 새로운 메소드를 추가하고 테스트하시오 1. 메소드명 : Shuffle 기능 : 배열 cards에 담긴 카드의 위치 뒤섞기(Math.random() 이용) 반환타입 : 없음 매개변수 : 없음 2. 메소드명 : Pick 기능 : 배열 cards에서 지정된 위치의 SutdaCard를 반환한다 반환타입 : SutdaDeck 매개변수 : int index (위치) 3. 메소드명 : Pick 기능 : 배열 cards에서 임의의 위치에 SutdatCard를 반환한다(Math.random() 사용) 반환타입 : Sutdadeck 매개변수 : 없음 class SutdaDeck { fina.. 2022. 10. 9.
JAVA) 자바의 정석 기초편 7-1 연습문제 풀이 자바의 정석 기초편 - 객체지향 프로그래밍2 7-1번 연습 문제를 풀어보았습니다!! Q) 섯다 카드 20장을 포함하는 섯다카드 한 벌(SutdaDeck클래스)를 정의한 것이다 섯다 카드 20장을 담는 SutdaCard 배열을 초기화하시오 단, 섯다 카드는 1부터 10까지의 숫자가 적힌 카드가 한 쌍씩 있고 숫자가 1,3,8인 경우, 둘 중에 한 장은 광(Kwang)이어야 한다 즉, SutdaCard의 인스턴스 변수 isKwang의 값이 true여야 한다 문제 풀이 class SutdaDeck { final int CARD_NUM = 20; SutdaCard[] cards = new SutdaCard[CARD_NUM]; //섯다카드 20개의 객체배열 //20장 다 1이고, true라서 다 k가 뜸 Sutd.. 2022. 10. 9.
예습) 디폴트 메서드와 스태틱 메서드(인터페이스) , 내부클래스... - 인터페이스에 수정이 필요하다면??? 원래는 인터페이스에 "추상메소드"만 선언 가능했음 그러나, 만약 인터페이스A가 수정되어 새 메소드를 만들어야하면???? ㄴ인터페이스A를 구현한 모든 클래스가 새 추상메소드를 구현시켜야함->넘복잡해짐 그래서 디폴트메서드라는 기능이 JDK뭐시기 버전부터 새로 추가됨 - deault 메소드는? 추상메소드의 기본적인 구현을 하는 메소드 : 추상 클래스와 달리 { 몸통 구현 } 해야하고, 앞에 default를 붙임(public은 기본으로 붙음, 생략 가능) ㄴ 추상메소드가 아니어서, 인터페이스를 구현한 클래스들을 ->상속 관계에서 조상 클래스에 새 메소드 추가한 거랑 다를 바 없음!! 단, 새로 추가 된 메소드가 기존 메소드와 이름이 중복되어 충돌할 수 있음(인터페이스를 후.. 2022. 10. 8.
JAVA) 클래스는 대체 어디에 생성되는 것일까? (feat.자바 메모리 종류) **이 게시글에 써있는 내용은 틀릴 수도 있습니다** **틀렸다고 생각하면 댓글 달아주세요 ㅠㅠ궁금해죽겠음** 자바에서 메모리 영역은 메소드영역(스태틱 영역) 스택 영역 힙 영역이 있다고 배웠다 (거의 스택이랑 힙만 배움) 제일 중요하니까 그렇겠지? 스택에는 메소드를 호출할때마다 그 메소드를 불러오는 역할~ 힙은 객체가 생성되면 힙에 생성~ 메소드영역(스태틱영역)에는 상수, 스태틱멤버 들이 불러와짐~ ㄴ그럼 스태틱 영역에는 내 자바에 있는 모든 스태틱이 한꺼번에 불러와질까? ㄴ쌤한테 물어보니까 그렇다고 한다..클래스파일이 많으면 컴퓨터가 개힘들겟군ㄷㄷ 근데 대체....클래스는....어디서오는 걸까?????ㅡㅡ 쌤이 쓸데없는 거 생각하지 말구 코드연습 같은거 하라구했는데 궁금해서 참을 수 없었다 ㅠㅠ 구글.. 2022. 10. 8.
국비학원 9일차) 상속, instanceof, 타입변환... 예습)인터페이스 상속 -> 클래스를 다시 사용할 목적 -> 생성자는 상속이 안 됨(클래스 초기화 목적이기 때문) -> 오버로딩 : 거의 생성자에 씀 초기화 목적으로 쓰기 때문//매개변수에 따라 초기화하는 내용이 다르게 -> 오버라이딩 : 상속에서 메소드를 내꺼로 덮어쓰는거 스택에 클래스가 쌓임,->그걸 실행할 때 힙으로 가서 실행을 시킴 타입 변환 -> super(), super. 부모 꺼를 사용함 // toString() 부모타입//업캐스팅 자식타입으로감//다운캐스팅 부모 참조변수에 자식 타입을 집어넣었을 떄, 부모의 변수, 메소드만 사용 가능)))) 자식-자식 관에는 관계 없음 instanceof 연산자 객체 타입을 비교하여 boolean(true or false)로 반환 단, is a 관계시(상속관계 - 사람은 동.. 2022. 10. 8.
JAVA) 객체배열/참조변수 형변환/매개변수의 다형성 이용해 결과값을 만들어보자! 객체배열/참조변수의 형변환/매개변수의 다형성 을 이용해 풀 것 --------조건------- 조상클래스 Product 자손 클래스 Tv / Computer / Audio 클래스 Buyer (고객)을 이용해 Tv, Computer, Audio를 구입하고, 물품의 총 금액과 어떤 제품을 샀는지 출력하세요 결과값 : Tv 를 구입하셨습니다 Computer 를 구입하셨습니다 Audio 를 구입하셨습니다 구입하신 물품의 총 금액은 350만원 입니다 구입하신 제품은 Tv, Computer, Audio 입니다 Product 클래스 public class Product { //조상 protected int price; //가격 public Product() {} public void pay() { } } Tv,Com.. 2022. 10. 7.
728x90