[JAVA] 객체지향 - 클래스를 인자 값으로 받는 클래스 출력문
·
JAVA
package TV; class Tv2 { String name = "Tv"; int price = 200; int point = 20; } class Audio2 { String name = "Audio"; int price = 200; int point = 20; } class Computer2 { String name = "Computer"; int price = 300; int point = 30; } class Buyer2 { int money = 1000; int point = 0; public void buy(Audio2 a) { // buy 생성자 안에 클래스의 인스턴스를 파라미터로 받아 사용. // 즉 Audio2의 클래스를 인자로 받아 사용 if (money >= a.price) { /..
[JAVA] 객체지향 - VO 객체 클래스를 이용한 프로그래밍
·
JAVA
① VO 객체 클래스 생성 package addr; //vo : 그 객체 하나가 담을 값들을 맴버 변수로 만들어 줬다. public class Member { String name; String tel; String address; // 이 밑으로는 출력하는 메소드를 만드는 것이다. public Member() { } // 공란인 생성자 생성 -> 나중에 값이 바뀔 수도 있어서 public Member(String name, String tel, String address) { this.name = name; this.tel = tel; this.address = address; } // 클래스 구성을 포함하고 있는 생성자도 생성 해줌 ///printData() 대용으로 활용가능 @Override pub..
[JAVA] 객체지향 - 다형성 (polymorphism)
·
JAVA
다형성(polymorphism) : 하나의 객체가 여러 가지 타입을 가질 수 있는 것을 의미한다. 자바에서는 다형성을 부모 클래스 타입의 참조 변수로 자식 클래스 타입의 인스턴스를 참조할 수 있도록 하여 구현하고 있으며 상속, 추상화와 더불어 객체 지향 프로그래밍을 구성하는 중요한 특징 중 하나이다. 업캐스팅(Upcasting) : 서브 클래스의 객체가 수퍼 클래스 타입으로 형변환되는 것. → 상속을 받은 서브클래스가 몇 개이든 하나의 인스턴스로 묶어서 관리하기 위해서 업캐스팅 함 package inherit; class Person { String name; int age; public Person(String name) { this.name = name; } } class Student extends..
[JAVA] 객체지향 - 메소드 오버라이딩 (method overriding)
·
JAVA
메소드 오버라이딩(method overriding) : 상속 관계에 있는 부모 클래스에서 이미 정의된 메소드를 자식 클래스에서 같은 시그니쳐를 갖는 메소드로 다시 정의. 자식 클래스는 부모 클래스의 private 멤버를 제외한 모든 메소드를 상속받은 후 메소드를 그대로 사용해도 되고, 필요한 동작을 위해 재정의하여 사용할 수도 있는 것을 뜻한다. 오버라이딩의 조건 메소드의 동작만을 재정의하는 것이므로, 메소드의 선언부는 기존 메소드와 완전히 같아야 한다. 메소드의 반환 타입은 부모 클래스의 반환 타입으로 타입 변환할 수 있는 타입이라면 변경할 수 있다. 부모 클래스의 메소드보다 접근 제어자를 더 좁은 범위로 변경할 수 없다. 부모 클래스의 메소드보다 더 큰 범위의 예외를 선언할 수 없다. package ..
해니01_15
'JAVA' 카테고리의 글 목록 (17 Page)