Java에서는 상당히 많은 class가 제공된다.
관련있는 class끼리 묶어서 package화 되어 제공된다.
ex) java.lang.Object, java.net.*, java.awt.*, ...
API Reference에서 api들의 정보들을 확인할 수 있다.
: Java의 최상위 class
package lecture0713;
class Student {
private String name;
private int age;
public Student() {
}
public Student(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public boolean equals(Object obj) {
Student tmp = (Student)obj;
boolean result = false;
if((this.name == tmp.name) && (this.age == tmp.age)) {
result = true;
}
return result;
}
}
public class Main {
public static void main(String[] args) {
Student s1 = new Student("홍길동", 20);
Student s2 = new Student("홍길동", 20);
System.out.println(s1 == s2); // false
System.out.println(s1.equals(s2));
}
}
실행 결과 : false
true
: 객체를 문자열로 변환할 때 사용한다.
package lecture0713;
class Student {
private String name;
private int age;
public Student() {
}
public Student(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public boolean equals(Object obj) {
Student tmp = (Student)obj;
boolean result = false;
if((this.name == tmp.name) && (this.age == tmp.age)) {
result = true;
}
return result;
}
@Override
public String toString() {
return this.name + " " + this.age;
}
}
public class Main {
public static void main(String[] args) {
Student s1 = new Student("홍길동", 20);
Student s2 = new Student("홍길동", 20);
System.out.println(s1);
}
}
실행 결과 : 홍길동 20
배열은 size가 고정되어 있고, 통일된 data type을 사용해야 한다.
이러한 특징 덕분에 속도가 빠르다.
Java에서는 "collection"을 주로 사용한다. (무조건 객체 형태로만 저장이 가능하다.)
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List list = new ArrayList();
list.add("Hello");
list.add("홍길동");
list.add(100);
List<String> list1 = new ArrayList<String>();
list1.add("홍길동");
//list1.add(3); // error
}
}
: key와 value의 쌍으로 데이터를 저장한다.
import java.util.HashMap;
import java.util.Map;
public class Main {
public static void main(String[] args) {
// Map
Map<String, String> map = new HashMap<String, String>();
map.put("1", "홍길동");
map.put("2", "Hello");
}
}