자바에 대해 본격적으로 공부하기 전 반드시 알아두어야 할 가장 기본적인 것들에 대해 알아보자
보통 일반적 자바 소스코드는 다음과 같은 형태로 만들어 진다.
/* 클래스 블록*/
public calss 클래스명{
/*메소드 블록*/
[public|private|protected] [static] (리턴자료형|void) 메소드명1 (입력자료형 매개변수,...){
명령문(statement);
...
}
/*메소드 블록*/
[public|private|protected] [static] (리턴자료형|void) 메소드명2 (입력자료형 매개변수,...){
명령문(statement);
...
}
...
}
class 블록
메소드 블록
1.private
public class Sample{
pirvate String secret;
private String getSecret(){
return this.secret;
}
}
2.Default
Package house;
public class HouseKim{
String lastname="kim"; // lastname은 dafault 접근 제어자로 설정.
}
예시) house/HousePark.java
package house; //패키지 동일!
public class HousePark{
String lastname = "park";
public static void main(String[] args){
HouseKim kim = new HouseKim();
System.out.println(kim.lastname); // HouseKim 클래스의 lastname 변수 사용 가능
}
}
HouseKim과 HousePark의 패키지는 house로 동일.
-> HousePark클래스에서 HouseKim의 lastname 변수 접근 가능.
3.Protected
Protected가 붙은 변수, 메소드는 동일 패키지의 클래스 또는 해당 클래스를 상속받은 다른 패키지의 클래스에서만 접근 가능.
예시) house/HousePark.java
*package house*; // 패키지 다름
public class HousePark{
*protected* String lastname="Park";
}
예시) house/person/EunyoungPark.java
package hose.person; // 서로 다른 패키지
import house.HousePark;
public class EunyoungnPark extends HousePark{ // HousePark을 상속.
public static void main(String[] args){
EunyoungPark eyp = new EunyoungPark();
System.out.println(eyp.lastname); // 상속한 클래스의 protected 변수는 접근 가능.
}
}
다른 패키지에도 사용 가능
4.public
package house;
public class HousePark{
protected String lastname = "park";
public String info = "this is public message."'
}
변수명 규칙
숫자로 시작할 수 없다.
_와 $ 이외 특수문자 사용 불가
키워드는 변수명으로 사용 불가
자료형 변수;로 구성
int a;
String b;
a=1;
b="hello java";
자주 쓰이는 자료형
(클래스명 예시)
class Cookie{}
class ChocoCookie{}
(메소드명 예시)
run();
runFast();
getBackground();
(변수명 예시)
int i;
char c;
float myWidth;
/*
프로그램의 저작권
이 프로그램의 저작권은 OOO에 있습니다.
Copyright 2013.
*/
public class MyProgram{
...
보통 블록 주석은 소스 코드내에서 한 블록(메소드, 클래스, 일정 부분)에 대한 설명시 주로 사용
int age // 동물의 나이
코드의 특정 부분에 대한 설명이 필요한 경우 사용