본문 바로가기
반응형

Language/JAVA39

JAVA 8일차 - 다형성 💡 다형성 Tv t = new captionTv(); // 실행 O CaptionTv t2 = (CaptionTv)new Tv(); // 객체에서 강제 형변환 --> 에러!!! 📃 다형성 예제 (1) 💾 소스파일 📂buyer 패키지 📝 buyerMain 클래스 package buyer; import java.util.Scanner; //조상타입의 참조변수로 여러 타입의 자손객체를 매개변수로 전달 public class BuyerMain { public static void main(String[] args) { Buyer buyer = new Buyer(); buyer.productBuy(); } } 📝 buyer 클래스 ⚡ 알게된 점? ◾ 다형성을 사용하여 배열 인스턴스를 만들 수 있다. Product.. 2022. 6. 29.
JAVA 8일차 - 연습문제 💾 소스코드 파일 📃 예제 1) static Product, ProductMain 클래스 작성 📂product 패키지 🚩 출력 p1의 제품번호(serial no)는 1 p1의 제품번호(serial no)는 2 p1의 제품번호(serial no)는 3 생산된 제품의 수는 모두 3개 입니다. 📝 Product 클래스 package product; class Product { static int count = 0; // 생성된 인스턴스 수를 저장하기 위한 변수 int serialNo; // 인스턴스 고유의 번호 // 기본 생성자, 생략 가능 public Product() { ++count; // 인스턴스 생성할 때마다 count 증가! serialNo = count; } } 📝 ProductMain 클래스 p.. 2022. 6. 29.
JAVA 7일차 - 접근 제어자, 다형성 💌 참고하면 좋은 사이트 💬다형성 https://reakwon.tistory.com/48- [JAVA] 자바 다형성(Polymorphism) 개념부터 응용 쉬운 설명 다형성(Polymorphism) 다형성이라는 개념은 OOP에서 아주 중요한 개념이므로 모르면 OOP에 대해서 제대로 안다고 할 수 없는 개념입니다. 각 요소들이 여러 가지 자료형으로 표현될 수 있다는 것을 말 reakwon.tistory.com 📂프로젝트 파일 💡 생성자 생성자의 접근 제어자 - 일반적으로 생성자의 접근 제어자는 클래스의 접근 제어자와 일치한다. - 생성자에 접근 제어자를 사용함으로써 인스턴스 생성을 제한할 수 있다. 싱글톤 패턴, 싱글톤 인스턴스 - 인스턴스를 하나만 생성한다. 💬 생성자에 private가 적혀있다. ex).. 2022. 6. 28.
JAVA 6일차 - 오버로딩, 오버라이딩, 상속 예제 💾 소스코드 🚩Car, CarSmart클래스를 만들어 차의 문의 개수, 차의 색상, 기어타입, 자동 운전 여부를 작성한다. //클래스명 : Car //멤버변수 : 데이터타입-변수명-용도 // int-door-문의개수, String-color-차의색상, String-gearType-기어타입 //생성자 // 매개변수를 3개 갖는 생성자 - 문의개수,색상, 기어타입을 전달받아 멤버변수 초기화 // 기본생성자 - 문의갯수는 3, 색상은 white, 기어타입은 auto로 멤버변수 초기화 //메서드 //toStirng()을 오버라이드 - 모든 멤버 변수를 문자열로 반환 //테스트 코드 : 문의 갯수와 색상, 기어타입이 다음과 같은 // 2개의 Car 인스턴스를 생성하고 정보를 출력 // 1번 인스턴스 - 3, wh.. 2022. 6. 27.
JAVA 6일차 - 제어자, 추상클래스, 추상메소드 💡제어자 제어자(modifier) - 클래스, 변수, 메소드의 선언부에 사용되어 부가적인 의미를 부여한다. - 제어자는 접근 제어자와 그 외의 제어자로 나뉜다. 접근 제어자 public protected default private 그 외 static final abstract native transient synchronized volatile strictfp 제어자 같은 클래스 같은 패키지 자손클래스 전체 public protected default private 💡static 제어자 static - 클래스의, 공통적인 - static이 사용될 수 있는 곳 - 멤버변수, 메소드, 초기화 블록 [ 멤버변수 ] - 클래스 변수가 된다. - 인스턴스를 생성하지 않고도 사용 가능하다. - 클래스가 메모리에 .. 2022. 6. 27.
JAVA 6일차 - 패키지, import문 선언 💡패키지 패키지(package) - 서로 관련된 클래스와 인터페이스의 묶음 - 패키지는 서브패키지를 가질 수 있으며 '.' 으로 구분한다. - 클래스의 실제 이름은 패키지명이 포함된 것이다. ex) String 클래스의 full name은 java.lang.String 💡import문 import문 - 사용할 클래스가 속한 패키지를 지정하는데 사용 - import문을 사용하면 클래스를 사용할 때 패키지명을 생략할 수 있다. - java.lang패키지의 클래스는 import하지 않고도 사용할 수 있다. 📃패키지 예제 package aaa; //import aaa.bbb.BBB; //import aaa.bbb.BBB2; import aaa.bbb.*; //import java.lang.*; --> lang패.. 2022. 6. 27.
JAVA 6일차 - toString 메소드, 상속 예제 연습 📃상속 예제(1) - Car //클래스명 : Car //멤버변수 : 데이터타입-변수명-용도 // int-door-문의개수, String-color-차의색상, String-gearType-기어타입 //생성자 // 매개변수를 3개 갖는 생성자 - 문의개수,색상, 기어타입을 전달받아 멤버변수 초기화 // 기본생성자 - 문의갯수는 3, 색상은 white, 기어타입은 auto로 멤버변수 초기화 //메서드 //toStirng()을 오버라이드 - 모든 멤버 변수를 문자열로 반환 //테스트 코드 : 문의 갯수와 색상, 기어타입이 다음과 같은 // 2개의 Car 인스턴스를 생성하고 정보를 출력 // 1번 인스턴스 - 3, white, auto // 2번 인스턴스 - 4, red, auto public class Car .. 2022. 6. 27.
JAVA의 정석 3판 - 두 점 사이 거리 계산 📝문제 1 💾소스코드 // 두 점의 거리를 계산하는 getDistance()를 완성하시오. public class Exercise6_6 { // 두 점(x, y)와 (x1, y1) 간의 거리를 구한다. static double getDistance(int x, int y, int x1, int y1) { //(1) 알맞은 코드를 넣어 완성하시오. double distance; // distance = Math.sqrt(Math.pow(x1-x, 2) + Math.pow(y1-y, 2)); return distance; } public static void main(String[] args) { System.out.println(getDistance(1,1,2,2)); } } 📝문제 2 💾소스코드 // 클.. 2022. 6. 26.
JAVA 5일차 - 오버라이딩 / 상속 💡 오버라이딩 # 오버라이딩(Overriding) - 상속받은 메소드의 내용을 변경하는 것 : 조상클래스로부터 상속받은 메서드의 내용을 상속받는 클래스에 맞게 변경하는 것을 말한다. 💬조건 1. 선언부가 같아야 한다.(이름, 매개변수, 리턴타입) 2. 접근제어자를 좁은 범위로 변경할 수 없다. - 조상의 메소드가 protected라면, 범위가 같거나 넓은 protected나 public으로만 변경할 수 있다. 3. 조상클래스의 메소드보다 많은 수의 예외를 선언할 수 없다. 💡 참조 변수 # 참조변수 * this - 인스턴스 자신을 가리키는 참조변수 * super - this와 같음. 조상의 멤버와 자신의 멤버를 구별하는 데 사용 - Object클래스를 제외한 모든 클래스의 생성자 첫 줄에는 생성자를 호출.. 2022. 6. 26.
728x90
반응형