목록JAVA (27)
군침이 싹 도는 코딩
package model; public interface Card { public static final int CLOVER = 1; public static final int HEART = 2; public static final int DIAMOND = 3; public static final int SPADE = 4; public String getCardNumber(); public void print(); } # 인터 페이스는 클래스가 아니다 따라서 클래스 자리에 interface가 들어간다 인터페이스 안에는 멤버변수가 올수 없으며 상수 ( constant) 와 전역 변수 ( static ) 만 가능하다 상수는 static final 키워드가 있는것을 상수라한다 인터페이스와 추상클래스는 비슷하지..
package model; public abstract class GrandParent { // 추상클래스는 // 메소드를 만드는데 메소드의 이름만 있는 클래스 String name; int age; public abstract void print(); // 추상 클래스에는 정상적인 메소드가 들어가도 상관없다. public int future() { return age + 20; } public abstract void hello(); } # 추상 클래스를 만드는 법은 클래스 왼쪽에 abstract 라고 쓰면 된다 추상 클래스는 메소드의 이름만 들어가 있는 클래스를 추상 클래스라고 한다 정상적인 메소드가 들어와도 상관은 없다 package model; public class Parent extends G..
# 멤버 변수는 클래스 안에 있는것을 말한다 ( 빨간 네모 ) 로컬 변수는 클래스 밖에 있는것을 말한다 ( 파란 네모 ) 파란 네모가 로컬 변수인 이유는 생성자 Person 안에 파라미터로 들어가 있기때문이다 멤버 변수는 Heap 메모리 영역에 생기고 로컬 변수는 Stack 메모리 영역에 생긴다
public class Parent { String name; int age; private int money; Parent() { System.out.println("Parent 클래스 생성자!"); } public int getMoney() { return money; } public void setMoney(int money) { this.money = money; } void print() { System.out.println("name :" + name); System.out.println("age :" + age); System.out.println("money :" + money); } } # Person 이라는 클래스이다 public class Child extends Parent { St..
@Override public void print() { // TODO Auto-generated method stub super.print(); for (int i = 0; i < subjects.length; i++) { System.out.println(subjects[i]); } } # 배열은 데이터를 출력시에 for 문을 사용해 어레이의 길이까지 출력하도록해준다 public Professor(int num, String name, String dept, String address, String[] subjects) { // 수퍼 클래스의 생성자 호출하는 코드 super(num, name, dept, address); this.subjects = subjects; } Professor pf1 = ..
@Override public void print() { // TODO Auto-generated method stub super.print(); for (int i = 0; i < subjects.length; i++) { System.out.println(subjects[i]); } # 메소드 오버라이딩을 하면 super라는 키워드가 생긴다 이것은 상속받은 클래스를 의미한다 수퍼를 눌러보면 상속받는 클래스로 가진다 package model; public class Person { protected int num; protected String name; protected String dept; protected String address; public Person() { } public Person(..
public class Parent { String name; int age; private int money; Parent(){ System.out.println("Parent 클래스 생성자!"); } public int getMoney() { return money; } public void setMoney(int money) { this.money = money; } void print() { System.out.println("name :" + name); System.out.println("age :" + age); } void printMoney() { System.out.println("name :" + name); System.out.println("age :" + age); System...
public String getName() { return name; } public void setName(String name) { this.name = name; } # 멤버변수의 접근제어자를 프라이빗으로 했을때 다른곳에서 그것을 가져오거나 수정하려면 가져올때는 getter 수정할때는 setter 함수를 쓰면 된다 # 함수의 파라미터가 많으면 일일히 만들기가 귀찮기때문에 생산성을 올리기위해 마우스 우클릭 > Source > Generate Getters and Setters 를 클릭해준다 # 해당되는것을 모두 체크하고 제너레이트를 누르면 자동으로 getter / setter를 만들어준다 # 자동으로 잘 만들어진것을 확인할 수 있다 이제 저장을하고 사용하면 된다