Java/Java Concept 20

메소드의 구분(클래스 메소드, 인스턴스 메소드)

class LoginPage{ boolean success; //인스턴스 변수 void Login(){ success = true; } //인스턴스 메소드 static void classLogin(boolean success){ return success; } //클래스 메소드 } 반환형 앞에 static 키워드가 존재하면 클래스 메소드(static method)라 하며 그렇지 않으면 인스턴스 메소드(instance method)라고 한다. 그렇다면 이 둘의 차이는 무엇일까? 클래스 메소드는 인스턴스(객체)를 생성하지 않고도 바로 접근이 가능하다. System.out.println(LoginPage.classLogin(true)); // 클래스 메소드 LoginPage myLoginPage = new L..

Java/Java Concept 2022.08.09

필드의 구분(클래스 변수, 인스턴스 변수, 지역 변수)

자바에서 필드는 세 가지로 구분된다. 변수 생성시기 소멸시기 접근방법 클래스 변수 클래스가 메모리에 올라갈때 프로그램 종료시 클래스이름.변수이름 인스턴스 변수 인스턴스 생성시 인스턴스 소멸시 인스턴스이름.변수이름 지역 변수 블록 내에서 변수 선언시 블록을 벗어날시 변수이름 static int 변수이름 int 변수이름 //class 내에 사용하면 인스턴스 변수 + public class 내에 사용하면 지역 변수 클래스 변수는 모든 인스턴스(객체)가 같은 값을 공유하지만, 인스턴스 변수는 그렇지 않고 고유한 값을 지닌다. http://www.tcpschool.com/java/java_member_field 코딩교육 티씨피스쿨 4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파..

Java/Java Concept 2022.08.09

접근제어자 + 제어자 개념

접근 제어자 : 클래스의 접근 범위를 제한하기 위한 제어자이다. public : 접근제한 x protected : 같은 패키지 + 다른 패키지의 자식 클래스에서 접근 o default : 같은 패키지 내에서만 접근 o(자료형 앞에 아무 것도 쓰지 않았을 때) private : 같은 클래스에서만 접근 o 허용 범위 : public > protected > default > private 접근 제어자 같은 클래스 같은 패키지 자식 클래스 그 외 public o o o o protected o o o x default o o x x private o x x x 기타 제어자 final : 변경할 수 없는 상수(constant)를 의미한다. (c,c++ 관점에서 바라볼 때 const와 같은 의미이다) final을..

Java/Java Concept 2022.07.22

패키지(package) 개념

패키지란? 클래스 + 인터페이스의 집합이다. 하나의 디렉터리를 의미 장점: 1. 파일관리의 효율성이 증대 2. 이름 충돌 문제 해결 패키지는 다른 패키지를 포함할 있다. ex)java.lang.String 패키지의 선언 문법 package 패키지이름; import문의 사용 선언한 패키지에 속한 클래스를 다른 파일에서 사용하기 위함이 목적이다. 문법 import 패키지이름.클래스이름 import 패키지이름.* 자바에서 가장 많이 사용하는 java.lang 패키지에 대해서는 import를 사용하지 않아도 사용할 수 있게 되어있다.

Java/Java Concept 2022.07.08

메소드 오버로딩

메소드 오버로딩(method overloading)이란 같은 이름의 메소드를 중복하여 정의하는 것을 의미한다. 메소드 오버로딩의 장점: 1. 메소드에 사용되는 이름 절약 2. 매개변수 타입이나 개수 고려 x 3. 다형성 구현 메소드 원형 1. println() 2. println(boolean x) 3. println(char x) 4. println(char[] x) 5. println(double x) 6. println(float x) 7. println(int x) 8. println(long x) 9. println(Object x) 10. println(String x) 메소드 오버로딩의 조건 1.메소드의 이름이 같아야 한다. 2.메소드의 시그니처, 즉 매개변수의 개수 또는 타입이 달라야 한다..

Java/Java Concept 2022.07.04

this와 this()

this 참조 변수 this 참조 변수는 인스턴스가 자기 자신을 참조하는 변수이다. this 참조 변수는 해당 인스턴스의 주소를 가리키고 있다. class Car { private String modelName; private int modelYear; private String color; private int maxSpeed; private int currentSpeed; Car(String modelName, int modelYear, String color, int maxSpeed) { this.modelName = modelName; this.modelYear = modelYear; this.color = color; this.maxSpeed = maxSpeed; this.currentSpeed..

Java/Java Concept 2022.07.04

생성자 개념

생성자(constructor) 자바에서는 객체의 생성과 동시에 인스턴스 변수를 원하는 값으로 초기화할 수 있는 생성자(constructor)라는 메소드를 제공한다. 생성자 이름 = 클래스 이름 Car 클래스의 생성자 이름 => Car 생성자의 특징 1.생성자는 반환값이 없지만, 반환타입을 void형으로 선언하지 않는다. 2.생성자는 초기화를 위한 데이터를 인수로 받을 수 있다. 3.객체를 초기화하는 방법이 여러개 있을 때는 하나의 클래스가 여러개의 생성자를 가질 수 있다.(매개변수가 여러 개 일때),메소드 오버로딩이 가능하다. ex) Car(String modelName) {} Car(String modelName, int modelYear) {} Car(String modelName, int model..

Java/Java Concept 2022.07.04

메소드 개념

클래스의 멤버는 필드(field)와 메소드(method)로 구성되어있다. 메소드(method): 특정 작업을 수행하기 위한 명령문의 집합이다.(함수로 생각하면 편리) 메소드의 사용목적 : 1. 코드의 중복성 해소 2. 모듈화로 인한 가독성 증대 3. 유지, 보수가 편리하다. 메소드 정의 접근제어자 반환타입 메소드이름(매개변수목록,parameters)//선언부{ //구현부 } Car의 클래스 accelerate() 메소드 정의 class Car { private int currentSpeed; private int accelerationTime; ... ① public void accelerate(int speed, int second) { // 선언부 // 구현부 System.out.println(sec..

Java/Java Concept 2022.07.04

클래스 선언

접근제어자 class 클래스이름{ 접근제어자 필드1의 타입 필드1의 이름; 접근제어자 필드2의 타입 필드2의 이름; 접근제어자 메소드1의 원형 접근제어자 메소드2의 원형 } 인스턴스의 생성: 1. 참조변수 선언: 클래스이름 객체참조변수이름; ex)Car myCar; 2. 인스턴스 생성: 클래스이름 객체참조변수이름 = new 클래스이름(); ex) Car myCar = new Car(); 참고자료 출처 http://www.tcpschool.com/java/java_class_declaration 코딩교육 티씨피스쿨 4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등 tcpschool.com

Java/Java Concept 2022.07.04

Java 클래스 개념

1.클래스의 개념 자바는 객체지향(object-oriented) 프로그래밍이다. 객체란 실생활에서 우리가 인식할 수 있는 사물이다. 객체의 상태와 행동을 구체화하는 프로그래밍을 객체 지향 프로그래밍이라고 한다. 클래스 객체를 정의하는 틀 또는 설계도를 의미하며, 클래스를 가지고 여러 객체를 생성하여 사용하게 된다. 필드 객체의 상태를 나타냄 , 클래스에 포함된 변수(variable) ex)car.modelname="람보르기니",car.modelYear = 2016 메소드 객체의 행동을 나타냄, 어떠한 특정 작업을 수행하기 위한 명령문이다.=함수 ex)car.accelerate(), car.brake() 인스턴스 메모리에 할당된 객체를 의미한다. -내 차(myCar) : 설계도에 의해 생산된 차량, 친구 ..

Java/Java Concept 2022.06.17