객체 배열 : 객체에 대한 레퍼런스를 원소로 갖는 배열
Book b[]; // Book 배열에 대한 레퍼런스 변수 b 선언
b = new Book[5]; //레퍼런스 배열 생성
- 값을 입력받아 객체배열에 담아 출력하기
class Song {
String singer;
String title;
Song(String singer, String title){
this.singer = singer;
this.title = title;
}
}
public class Array05 {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
Song so[] = new Song[2]; //객체배열 생성
//가수랑 제목 입력받기
for (int i = 0; i < so.length; i++) {
System.out.println("가수: ");
String singer = s.next();
System.out.println("제목: ");
String title = s.next();
so[i] = new Song(singer, title); //객체 생성
}
for (int i = 0; i < so.length; i++) {
System.out.println(so[i].singer+", "+so[i].title);
}
}
}
abstract class Circle {
protected double r;
Circle(double r){
this.r = r;
}
abstract double get();
}
class Cir extends Circle {
Cir(double r){
super(r);
}
double get() {
return r;
}
}
public class AbstEx03 {
public static void main(String[] args) {
//객체배열
Circle c[] = new Circle[5];
Scanner sc = new Scanner(System.in);
for(int i=0; i<c.length; i++) {
double r = sc.nextDouble(); //반지름 입력받음
c[i] = new Cir(r); //객체 생성, 업캐스팅
System.out.println(c[i].get());
//2.3 5.7 12.3 51.0 21.1
}
}
}
class Arr {
static int[] con(int[] a, int[] b) {
int []arr = new int[a.length + b.length]; //8
for(int i=0; i<a.length; i++) {
arr[i] = a[i]; //a배열을 arr배열에 담는다. //1234
for(int j=a.length; j<a.length+b.length; j++) { //j=4,5,6,7
arr[j] = b[j - a.length];
}
}
return arr;
}
static void pr(int[] a) {
//배열 출력은 for문!
for (int i = 0; i < a.length; i++) {
System.out.print(a[i] + " ");
}
}
}
public class AbstEx04 {
public static void main(String[] args) {
int ary1[] = {1,2,3,4};
int ary2[] = {5,6,7,8};
int ary3[] = Arr.con(ary1, ary2);
Arr.pr(ary3);
}
}
728x90
728x90
'JAVA > Java 기초' 카테고리의 다른 글
instanceof 연산자 (0) | 2022.05.24 |
---|---|
다형성 (polymorphism) (0) | 2022.05.24 |
오버로딩과 오버라이딩 (0) | 2022.05.23 |
상속 - inheritance (0) | 2022.05.23 |
this (0) | 2022.05.23 |