Programming (124) 썸네일형 리스트형 [JAVA] 인터페이스 인터페이스는 추상 클래스와 비슷한 개념을 가지고 있다. 다른 점은 인터페이스에는 추상 메서드만 정의 가능하다는 것이다. 그리고 상수만 작성 가능하다. 일단 코드를 보겠다. public interface Phone { public static final int MAX=100; // public: 공개범위 오픈 // static: "객체와 무관하게" // final: "상수화" int MIN=0; public abstract void powerOn(); void powerOff(); void soundUp(); void soundDown(); } 근데 의문이 들 것이다. 추상 메서드는 abstract를 붙여줘야 하는데 붙여주지 않았다. int타입 앞에 키워드들도 붙여주지 않아도 자바에서 자동으로 제공해준다... [JAVA] 추상클래스 추상 클래스에 대해 알아보겠다. 추상 클래스란 쉽게 말해 추상 메서드를 가지고 있는 클래스이다. abstract 키워드로 선언된 불완전한 클래스를 말하고. 추상 클래스는 인스턴스화 할 수는 없으나, 추상 클래스를 상속받는 자식 클래스의 인스턴스화는 가능합니다. 추상 클래스를 선언하는 방법은 다음과 같습니다. abstract class A{ }; 일반적인 클래스 앞에 abstract키워드만 붙여주면 된다 이로써 이 클래스는 추상 클래스가 되었다. 추상 메서드도 마찬가지로 abstract 키워드로 선언된 메서드를 말합니다. 추상 메서드는 {}가 없습니다. 코드를 보겠습니다. abstract class A{ abstract void hello(); } class B extends A{ } 이 클래스를 상속한 .. [JAVA] 접근 제어자, getter setter 접근 제어자에 알아보겠다. 제어자란 클래스와 클래스 멤버의 선언 시 사용하여 부가적인 의미를 부여하는 키워드를 의미합니다. 자바에서 제어자는 접근 제어자와 기타 제어자로 구분할 수 있습니다. 기타 제어자는 여러 개를 함께 사용할 수 있지만 접근 제어자는 두 개 이상 사용할 수 없습니다. 자바에서는 4가지의 접근 제어자를 제공합니다. 1. public 2. protected 3. default 4. private 간단하게 설명하겠습니다. public은 어디에서도 접근이 가능한 제어자이다. protected는 패키지간의 접근이 불가능하지만 자식 클래스는 접근이 가능하다. default의 접근 제어를 가지는 멤버는 같은 클래스의 멤버와 같은 패키지에 속하는 멤버에서만 접근할 수 있습니다. default는 작성.. [JAVA] .equals(), Object클래스, 형변환(캐스팅) 먼저. equals()에 대해 알아보겠다 먼저 우리는 전에 이런 코드를 봤을 거다. public class Test01 { public static void main(String[] args) { String a = "JAVA"; String b = "JAVA"; System.out.println(a==b); } } 이 결과 true가 나올 것이다. 하지만 public class Test01 { public static void main(String[] args) { String a = new String("JAVA"); String b = new String("JAVA"); System.out.println(a==b); } } 이 코드는 false가 나올 것이다. 예상했을 텐데 == 비교 연산자는 주소.. [JAVA] 상속,super, 오버라이딩 상속에 대해서 이야기하겠다 상속은 쉽게 말해 우리가 말하는 그 상속하고 비슷하다고 생각하면 된다. 상속에는 부모 클래스와 자식 클래스가 있다. 부모 클래스가 자식 클래스에게 상속해주는 것이다. 하는 방법은 코드를 보겠다. public class Test01 { public static void main(String[] args) { Student s1 = new Student(); s1.info(); } } class Person{ String name = "홍길동"; } class Student extends Person{ void info() { System.out.println(super.name); } } 간단한 코드를 만들어 봤다. 자식 클래스가 부모 클래스를 상속받는 방법은 클래스명 뒤에 ex.. [JAVA] 객체 배열 객체 배열에 대해서 알아보겠습니다. 객체 배열은 말 그대로 객체(인스턴스)를 배열로 만든 것이다. 배열의 전제조건으로는 1. 관련된 데이터인가 2. 같은 자료형인가 3. 개수가 정확히 정해져있나 이 조건만 맞으면 객체를 배열로 만들 수 있다. Player p1 = new Player(); Player p2 = new Player(); Player p3 = new Player(); Player p4 = new Player(); Player p5 = new Player(); Player p6 = new Player(); Player p7 = new Player(); 7개의 인스턴스를 생성하였다 만일 더 필요하다면 저걸 더 복사 붙여넣기 하면 되겠지만 더 쉽게 배열로 만들어버리면 된다 관련된 데이터이고 같은 .. [JAVA] 생성자 우선 객체를 만들 때 클래스가 정의되어 있어야 한다. 클래스는 데이터들을 생성하기 위해 미리 구조를 선언(정의) 한 것으로 우리가 줄곧 사용해왔던 main메서드를 이루고 있는 것도 하나의 클래스이다. 클래스를 정의하면 객체를 main메서드에서 호출해야 하는데 호출하는 방식은 Car c1 = new Car(); Car라는 클래스를 정의했다고 가정해보자 그렇다면 그 클래스를 호출하는 방법은 이런 식이다. 왜 이 말을 하냐면 new뒤에 Car가 생성자를 호출하는 것이기 때문이다. 클래스를 봐보자 Class Car{ int door; String color; void info(){ System.out.println(color+"색에 문"+door+"이 달려있다"); } Car(){ } } 이 클래스의 메서드를 .. [JAVA] 객체지향언어 객체지향 언어에 대해서 알아보겠다. 자바에서 가장 중요한 부분이다. 자바에서 객체지향에 대해서 배우지 않는다면 그것은 나쁘다 우선 객체란 보고 만질 수 있는 것, 지성적으로 이해할 수 있는 것, 생각이나 행동이 추구하는 바를 말한다. 쉽게 말해 우리 눈으로 볼 수 있는 걸 객체라고 한다. 객체지향 언어의 특징으로는 크게 4가지로 볼 수 있는데 1. 추상화 불필요한 정보는 숨기고 중요한 정보만을 표현하여 프로그램을 간단히 만드는 것을 말합니다. 자동차를 예로 들자면, 공통적으로 중요한 부분인 엔진, 브레이크, 연료 등에 대한 기능을 뽑아내는 것을 의미합니다. 2. 상속 특정 클래스가 가진 속성, 동작을 다른 클래스에서 그대로 사용할 수 있습니다. 이미 작성되어 있는 클래스를 상속하여 사용함으로써 코드를 재.. 이전 1 ··· 11 12 13 14 15 16 다음