개발일지/Java + Spring (85) 썸네일형 리스트형 [Java] 접근 제한자, final 예약어 접근제한자 변수, 메소드, 생성자, 클래스 등의 자원을 어떤 범위까지 접근가능한가 지정하는 예약어이다. private 해당 클래스 내에서만 접근이 가능. 손상을 막기 위해 다른 사람이 함부로 할 수 없다. (캡슐화) default 접근제한자를 지정하지 않을 경우 붙는다. 기본적으로 같은 패키지 내에서만 접근이 가능하다. protected 같은 패키지 내에서는 접근이 허용되고, 다른 패키지에서도 자식클래스에서는 접근이 가능하다. public 모든 영역에서 접근이 가능. 다른 패키지에서도 접근이 가능하다. package Private2; public class PrivateData { private int privateVar = 10; } 클래스는 public, 하지만 변수 앞에는 private로 지정이 되.. [Java] 상속(extends)의 정의 - overriding, Super() 상속 부모 클래스에서 정의한 변수나 메소드를 자식 클래스에서 자신의 것처럼 사용할 수 있다. extends 예약어를 사용 package Extends; public class Parent{ int age; int parentVar = 10; void parentMethod() { System.out.println("parent Method"); } } 부모 클래스를 하나 만든다. 여기서 public은 모든 영역에서 접근이 가능한 접근제한자이다. 그리고 인스턴스 멤버 변수 두 개와 메소드 하나가 있다. package Extends; public class Child extends Parent { int childVar = 20; void chilldMethod() { System.out.println("c.. [Java] private, get-set 메소드 쉽게 생성하기(상속) 접근제한자를 배우진 않았지만 그 전에 각 변수에 private 지정하는 법과 get,set 메소드를 통해 해당 변수에 쉽게 접근하는 방법을 배워보겠다. 이런 형태를 캡슐화 라고 한다. 한 눈에 보기에 복잡하고 긴 코드 처럼 보이지만 일일이 손으로 치지 않고 생성할 수 있는 단축어가 있다. package Private; public class Person { private String name; private int age; private int height; private int weight; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { r.. [Java] 생성자(Constructor), this() 생성자, 초기화 블록 생성자(Constructor) new 연산자에 의해서 객체 생성을 할 때 단 한 번 호출되는 단위(아래에서 9번)이다. 생성자를 이용해서 객체 생성(20, 26, 32)을 하면 Heap 영역에 매 번 새로운 객체가 생성되는 것이다. 이전까지 파라미터가 없는 빈 생성자를 이용해 객체를 생성했는데 클래스에 생성자가 하나도 정의 되지 않았을 땐 컴파일러가 알아서 처리를 했다. 하지만 클래스에 인자값(11, 14)이 있는 생성자가 하나라도 있을 시 컴파일러가 처리를 못 하기에 반드시 빈 생성자(9)도 함께 정의해 주어야 한다. 인자값이 없다면 안 해도 됨! ▼ 11, 14번이 있는데 9번이 없다면 20번에서 생성자를 만들 수 없다. Console ... person1.name = null, person1.age.. [Java] 성적 입출력 - 클래스로 나누기, 소수점 n번째 자리 지금까지 배운 것으로 성적 입출력을 해봤다. package Graid; public class Print { int tot; double avg; String grad; void print1(String name, int k, int m, int e) { System.out.println("당신의 이름은 " + name + "입니다."); System.out.println("국어 성적 : " + k ); System.out.println("수학 성적 : " + m ); System.out.println("영어 성적 : " + e ); } void tot(int k, int m, int e) { tot = k + m + e; System.out.println("총점 : " + tot); } void ave.. [Java] 메소드 정의와 다양한 종류 - 매개변수(parameter), 인자(Argument) 메소드 클래스가 수행하는 기능이다. 리턴타입 메소드명 (파라미터 변수1, 파라미터 변수2 ... ){ 구현내용 } 값을 반환할 때는 예약어인 return 사용한다. 호출하는 쪽에서 던지는 값을 인수(Argument, 인자) 라고 하고, 메소드에서 받는 값을 매개변수(Parameter, 파라미터) 라고 한다. 리턴 값이 없을 경우 리턴 타입에 void를 넣으면 된다. 리턴 타입이 void면 return 키워드를 사용하지 않아도 되는데 사용할 경우에는 메소드의 수행을 강제 종료하는 기능을 가지고 있다. 참고로 파라미터 변수와 인수의 데이터 타입과 순서 모두 같아야 한다! 파라미터 변수와 인자값 개념 익히기 package Method; class Args{ int x; void add(int x) { //파라.. [Java] 클래스 정의와 변수의 3가지 종류 Class(클래스) 자바에서 생성되는 최소 단위로 객체를 사용하기 전 설계해 놓은 것이다. 객체의 특성 - 변수 객체의 기능 - 메소드 package AirCon; public class AirCon { //(멤버)변수 정의(변수는 모두 소문자) String company; String color; int price; int size; int temp; //메소드 정의(하나의 행위. 메소드의 첫글자는 소문자로 쓰는 것이 관습이다.) void onPower() { System.out.println("power on"); } void offPower() { System.out.println("power off"); } void upTemp() { temp++; } void downTemp() { temp--.. [Java] 0924 클래스의 구조 / 상위 클래스를 상속 받은 클래스 Main은 public static void main(String[] args) { } 있지만, class에서는 main을 안쓴다. 잘 사용하진 않지만 하나로 합친다면 public은 메인에 하나만 사용하고, 메인 이름이 파일명이 된다. 여러 개로 나누어서 사용하는 게 기본이다. -클래스의 구조- 변수 선언 (멤버변수-모든 지역에서 사용 가능하다) 메소드 (인쇄 행위 , 계산 행위) 메소드 안에서도 변수 선언을 할 수 있음 (로컬-지역 변수는 여기서만 사용할 수 있다.) main에서는 가져다 씀 - 모든 루틴을 메인에서 사용함 클래스에서 설정을 해줘도 메인에서 인쇄를 해야 볼 수 있다. 그냥 사용하는 것이 아니라 반드시 객체 생성(new)을 해줘야 한다. -------------- 멤버 변수 - 초기화 하.. 이전 1 ··· 6 7 8 9 10 11 다음