티스토리 뷰
Class 생성
객체지향 언어인 Java에서 가장 중요한 것은 역시 Class라고 말할 수 있다. 클래스 생성 방법은 다음과 같다.
1 2 3 | public class Daerong { } | cs |
public은 접근지정자(access modifier)로 멤버들에게 접근 제한을 걸 수 있어 접근 제한자라는 이름으로도 불립니다. 접근 제어자는 객체지향 프로그래밍의 특징인 정보은닉(Data hiding)을 위한 키워드입니다.
- 상수를 제외한 필드는 감추는 것이 좋습니다.
- 접근 제한자를 두 개 이상 같이 사용할 수 없습니다.
아래는 접근 지정자의 종류와 설명입니다.
- public : 모든 멤버에서 접근이 가능합니다.
- protected : 상속받은 클래스 또는 같은 패키지에서만 접근할 수 있습니다.
- default(package private) : 같은 패키지의 클래스, 변수, 메소드, 내부 클래스에서 접근 가능합니다. 접근지정자를 생략하여 사용합니다.
- private : 클래스 내에서만 접근할 수 있습니다. 즉 다른 멤버에서 사용이 불가합니다.
패키지란? 서로 관련이 있는 클래스 또는 인터페이스를 묶어놓은 것, 클래스들을 필요할 때만 사용될 수 있도록 하고 계층적으로 관리하며 다른 그룹에 클래스의 이름간 충돌을 막을 수 있다.
접근 허용가능 범위는 public > protecred > default > private 순
접근지정자 | 클래스 내부 | 동일 패키지 | 하위 클래스 | 이외의 영역 |
public | o | o | o | o |
protected | o | o | o | x |
default | o | o | x | x |
private | o | x | x | x |
protected와 default의 차이 : default와 같으나 다른 패키지의 하위클래스에서도 상속이 가능한 것이 protected
주석문
코드의 이해를 도와주는 용도로 사용되는 주석문은 소스에 영향을 주지 않습니다. 주석문에는 핵심만 적는 것이 좋으며 특수문자를 포함하면 안됩니다. 주석문은 다음 3가지 방법으로 사용할 수 있습니다.
1. // 내용 : 한 라인 주석, //부터 행이 끝날 때까지 주석으로 처리합니다.
2. /* 내용 */ : 여러라인 주석, /*와 */ 안에 있는 문자를 주석 처리합니다. 여러줄을 처리할 수 있습니다.
3. /** 내용 */ : 여러라인 주석, 클래스의 선언부, 멤버, 생성자 등 클래스 인터페이스 시작 부분에 사용해야 합니다. 이 주석은 소스를 라이브러리로 만들 때, 공식 문서용으로 뽑아 사용할 수 있고 javadoc 시스템을 사용하여 API 문서나 도움말 등에 이용됩니다.
메인 메소드
메인 메소드는 Java 프로그램의 진입점으로 항상 public static void main(String[] args)의 형태로 작성된다. 매개변수 명만 변경 가능하며 나머지는 정해진 룰을 따라야 한다.
1 2 3 4 5 6 | public class Daerong { public static void main(String[] args) { int n = 2018; System.out.println("Hello "+ n + "!!!"); } } | cs |
1 2 3 | public static int sum(int n, int m) { return n + m; } | cs |
1 2 | int i = 20; s = sum(i, 10); | cs |
1 | int i = 20; | cs |
1 | public String createFunction(){}; | cs |
1 bit | 1 byte | 2 byte | 4 byte | 8 byte | |
논리형 | boolean | ||||
문자형 | char(유니코드) | ||||
정수형 | byte | short | int | long | |
실수형 | float | double |
1 | public static final String MY_NAME = "Daerong"; | cs |
1 2 3 | public enum Type { WALKING, RUNNING, TRACKING, HIKING } | cs |
'프로그래밍 > Java' 카테고리의 다른 글
Java 프로그래밍 -이스케이프 문자- (1) | 2018.02.23 |
---|---|
Java 프로그래밍 -입출력- (0) | 2018.02.23 |
Java 프로그래밍 -언어의 활용- (0) | 2018.02.22 |
Java 프로그래밍 -파일 생성- (0) | 2018.02.22 |
Java 프로그래밍 -설치- (1) | 2018.02.22 |
- Total
- Today
- Yesterday
- RDBMS
- node.js
- gcp
- DevOps
- aws
- LINQ
- Quasar
- Next.js
- vue
- nuxt.js
- nosql
- vue.js
- hoisting
- Cloud
- SQLite
- MySQL
- garbage collection
- delegate
- .NET
- alpine.js
- oracle
- Angular
- Gatsby.js
- JavaScript
- PostgreSQL
- Azure
- REACT
- 이진탐색 #중복
- C#
- svelte
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |