반응형 자바[Java] 타입변환과 다형성에 대한 개념 정리 타입 변환과 다형성 같은 타입이지만 실행 결과가 다양한 객체 대입이 가능한 성질입니다. 상위 타입에서는 모든 하위의 객체가 대입이 가능하며, 하위 타입은 자동으로 상위 타입으로 타입 변환이 됩니다. 자동 타입변환은 바로 위의 상위 클래스가 아니더라도 상속계층의 상위이면 자동으로 타입 변환이 가능합니다. 예시. 클래스가 각각 Amom, B, C, D, E 가 있을경우 public class Amom { } public class B extends Amom { } public class C extends Amom { } public class D extends B { } public class E extends C { } public class AmomExample { public static void ma.. 자바[Java] 상속 이란? 상속(Inheritance)은 객체 지향 프로그램 A(상위 부모 클래스)의 멤버를 B(하위or 파생 자식 클래스)가 사용할 수 있다. 따라서 B클래스는 A클래스의 필드와, 메소드를 사용할 수 있다. 상속의 효과는 상위(부모) 클래스를 재사용해 하위or파생(자식)클래스를 빠르게 개발할수있다. 반복되는 코드는 줄일수 있으며, 유지 보수의 편리성, 객체의 다형성 구현이 가능하다. 상속대상에 제한된 내용은 private접근을 갖는 필드와 메소드는 제외 된다. 또다른 제한: 상위(부모)클래스가 다른 패키지에 있을경우, default(디폴트)접근을 갖는 필드와 메소드도 제외된다. 상위 생성자를 호출(super(…)) 파생, 하위 객체를 생성하면 상위 객체부터 생성이 된다. 상위(부모)클래스가 없을경우, 파생or하위.. 자바[Java] Getter와 Setter 메소드란? Getter은 private필드의 값을 리턴하며, 필요할경우 필드 값을 가공할수있다. Getter GetFieldName() or IsFieldName() 메소드 필드 타입이 boolean 일 경우 isFieldName() Setter은 외부에서 주어진 값을 필드 값으로 수정한다. Setter 필요할 경우 외부의 값을 유효성 검사 SetFieldName(타입 변수) 메소드 매개 변수 매개 변수 타입은 필드의 타입과 동일 Source → Generate Getters and Setters … 클릭시 필드에 생성된것을 토대로 자동으로 Getter, Setter의 내용이 출력된다. public class Car{ private int speed; private boolean stop; public int ge.. 자바[Java] 상수 final란 final 필드는 최종적인 값을 갖고 있고, 값을 변경할 수 없다. final 필드는 한 번의 초기값을 지정할 수 있다. public class examfinal{ // 기본 필드에 final의 내용을 작성. final String nation = "Korean"; // 이미 korean이라는값을주고 선언 되었고 finaln String ssn; // ssn은 아직 값은 안준 상태로 선언 되었다. public examfinal(String ssn){ // ssn이라는 값을 주기 위해선 우선 this를 사용해 지정시킨다. this.ssn = ssn; } } public class examfinaltest { public static void main(String []args){ // examfinal을 사.. 자바[Java] 메소드란? 메소드는 메소드를 실행할때 필요한 데이터를 외부에서 받기위해 사용하고, 메소드에 리턴 타입은 메소드가 실행 후 리턴하는 값의 타입을 말한다. 메소드는 리턴값이 있을수도 있고 없을수도있다. public class Calculator { void powerOn(){ // return이 필요없는 void메소드. System.out.println("on"); } int plus(int x, int y){ // return이 필요한 예시. int result = x + y; // result라는 int에 x와 + y를 더한다. return result; // result를 종료한다. 혹은 } double divide(int x, int y){ //double double result = (double)x / (d.. 자바 [Java] 객체지향(OOP) 프로그래밍이란? 개념정리 객체지향 프로그래밍? 객체지향 프로그래밍(Object-Oriented Programming)란 프로그램을 설계하는 개념이자 방법입니다. 많이 알고 있는 OOP가 되겠습니다. 특징으로는 캡슐화, 상속, 다형성 등이 있습니다. 객체(Object)란? 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고, 식별이 가능하다는 것입니다. 즉 객체는 눈에 보이는 것들이라 할 수 있습니다. 캡슐화(Encapsulation)란? 캡슐화는 객체의 필드, 메소드를 하나로 묶고, 실제 구현 내용을 감춰줍니다. 따라서 외부에 객체는 객체 내부의 구조를 알지 못하며 객체가 노출해서 제공하는 필드와 메소드만 이용할 수 있게 됩니다. 캡슐화를 사용하게 되는 예시로는 자동차에 들어가는 엔진이 바깥으로.. 이전 1 ··· 7 8 9 10 11 다음