상속 INHERITANCE_Part3
·
Programing/JAVA
Object 객체 모든 클래스의 부모 클래스 모든 클래스 참조 가능 instanceof 참조변수가 참조하는 인스턴스 실체 타입 확인 true 라는 것은 형변환이 가능 package chapter08.poly; public class ObjectEx { public static void main(String[] args) { allObject(new GraphicCard()); allObject(new Amd()); allObject(new Nvidia()); allObject("안녕"); } public static void allObject(Object obj) { System.out.println(obj.toString()); if(obj instanceof GraphicCard) { GraphicC..
상속 INHERITANCE_Part2
·
Programing/JAVA
final final 변수 : 변수값 변경불가 - 상수 final 메서드 : 오버라이딩 불가 final 클래스 : 상속 불가 final 메서드 : 오버라이딩 불가 class MethodSuper{ final void superMethod(){ System.out.println("super method"); } } class MethodChild extends MethodSuper{ void superMethod(){ System.out.println("child method"); } } public class FinalMethod{ public static void main(String[] args) { // TODO Auto-generated method stub } } final 클래스 : 상속 불가..
상속 INHERITANCE_Part1
·
Programing/JAVA
클래스의 수직 구조 설계 extends 예약어 사용 부모 클래스를 자식 클래스가 상속받으면 부모 클래스의 변수와 메서드가 상속됨 부모 클래스의 변수와 메서드를 자신의 것처럼 사용 가능 부모클래스는 슈퍼(super), 상위, 베이스 클래스 라고도 부름 자식클래스는 서브, 하위, 파생 클래스 라고도 부름 부모클래스 package chapter08; public class Phone { String name; String color; String company; void call() { System.out.println("전화를 건다"); } void receive() { System.out.println("전화를 받다"); } } 자식클래스 package chapter08; public class Smart..
클래스 CLASS_Part4
·
Programing/JAVA
final 변경 불가 final 클래스 : 클래서 상속 불가 (상속 파트에서 확인) final 메소드 : 메소드 오버라이딩 불가 (상속 파트에서 확인) final 변수 : 상수, 생성자에 한번 초기화 가능 final 변수 package chapter07; public class FinalEx { public static void main(String[] args) { Final f = new Final(); //f.number = 200; // 에러 System.out.println("PI = " + Final.PI); System.out.println(f.number); } } class Final { final static double PI = 3.14; final int number; // 상수 F..
클래스 CLASS_Part3
·
Programing/JAVA
this 자신의 클래스 내부에 있는 필드, 생성자에 접근하기 위한 자가 자신의 instance this() 생성자 package chapter07; public class Car2 { // 필드 String color; String company; String type; Car2() { this("white", "기아", "경차"); } Car2(String color, String company, String type) { this.color = color; this.company = company; this.type = type; } Car2(String com, String t) { this("white", com, t); } Car2(String t) { this("white", "기아", t);..
클래스 CLASS_Part2
·
Programing/JAVA
(멤버)메서드 http://thedata.kr/thecoding/java/function 가변 인자 메소드(Variable Arguments) 인자 앞에 ..을 붙임, 배열처럼 처리 void printInfo(String ...infos){ System.out.println(infos[0]); } package chapter07; public class VariableArgument { /** * Variable Argument Test */ void printInfo(String ...infos){ if(infos.length != 0){ for(int i=0;i
클래스 CLASS_Part1
·
Programing/JAVA
자바에서 생성되는 프로그램의 최소 단위 기능(메소드)과 속성(멤버변수)로 구성 사용자 정의 자료타입 데이터와 기능을 함께 저장할 수 있는 자료구조 객체 지향 프로그래밍 OOP( Object Oriented Programming) 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것 객체 지향 프로그래밍의 특징 추상화 추상화의 사전적 의미는 특정한 개별 사물과 관련되지 않은 공통된 속성이나 관계 등을 뽑아내는 것 공통의 속성이나 기능을 묶어 이름을 붙이는 것으로 객체 지향적 관점에서 클래스를 정의하는 것 예를 들어, 토끼, 고양이, 사자, 치타가 있을 때 이것들을 각각의 객체라 하며 이 객체들을 하나로 묶으려 할 때 동물 또는 생물이..
배열 ARRAY
·
Programing/JAVA
같은 타입의 변수들로 이루어진 유한 집합으로 정의 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것 배열 요소(element) : 배열을 구성하는 각각의 값 인덱스(index): 배열에서의 위치를 가리키는 숫자(int) 배열의 선언 타입[ ] 변수명; // int [ ] score; 타입 변수명[ ]; // int score[ ]; package chapter06; public class ArrEx { public static void main(String[] args) { int[] arrInt; int arrInt2[]; double[] arrDouble; String[] arrString; } } 배열 생성 타입[] 변수명; // 배열을 다루기 위한 참조변수 선언 변수이름 = new 타입[길이];..
함수 - 메서드 FUNCTION
·
Programing/JAVA
함수(function)란 하나의 특별한 목적의 작업을 수행하기 위해 독립적으로 설계된 코드의 집합으로 그 처리 로직을 재실행 , 재사용, 반복사용 가능 이미지참조: https://evan-moon.github.io/2019/12/29/about-pure-functions/ 메서드(method) 또는 멤버 함수(member function) 객체지향 프로그래밍에서의 함수 자바의 클래스 = 멤버변수 + 멤버메서드로 구성 메서드(함수) 중요 구성요소: 인자(argument)와 리턴 값 함수 사용(호출)시 무엇을 주고(전달) 무엇을 받을지(리턴)를 생각하는 것이 중요 형식 접근자 리턴데이터타입 함수명(인자 x) { 처리 로직 결과 리턴 } public int fn(int x) { int y = x * x; re..
제어문 - 반복문 LOOP
·
Programing/JAVA
제어문 프로그램 실행순서를 제어하는 구문 변수연산을 특정 조건에서만 처리하거나 특정 횟수만큼 처리 반복문 무엇이 반복되는 지, 몇 번 반복되는지를 찾는 것이 중요 조건식이 참(true)인 경우 실행블럭을 반복 처리 조건식이 계속 참(true)이면 무한 반복 처리 종류 : for, while, do~while for 문 형식 for(초기화식; 조건식; 증감식) { // 조건식이 참인경우 실행블럭 } 기본 반복문 package chapter05; public class ForEx { public static void main(String[] args) { // 반복 출력 오름차순 ASC : 1~ 10 for (int i=1; i0; i--) { System.out.println("i = "+i); } } }..