[java][c] 음.. java는 많이 틀리군요.. 급 질문입니다!!!!
푸른나래
아래의 c 문장을 실행하면 잘 답이 나옵니다..
#include stdio.h
#include string.h
int main(){
void sayHello()
{
printf(Hello World!);
}
sayHello();
getchar();
}
그런데, 왜 형식이 같은 아래 자바문장은 에러가 날까요..
public class Test{
public static void main(String[] args){
public void sayHello(){
System.out.println(Hello World!);
}
sayHello();
}
}
-
배꽃
illegal start of expression, class, interface, or enum expected 에러납니다... 자바에서 함수를 선언할때는 메인 밖에서 해야됩니다.. ^^.
-
풀잎
자바두 함수안에 함수가 선언되나??.. 에러 날텐데 .. 쩝...이상한 구문이다. ㅎㅎ
-
너만을
ㅎㅎ 그러네요.. 보통 메인 위로 올리거나 맨 밑으로 빼는데..,일단 dev 컴파일러에서는 에러는 안나고 잘 처리 됩니다.. 요즘 java만 보다보니 ㅋ ㅋ
-
환찬
C 에서는 함수 안에 함수가 선언이 가능한가요? 오홍 ;; 저런문장은 첨 보는데 ;; ㅎㅎ;;
-
초롱
우아~~ 제가 원하던 답을 콕콕 바로 짚어 주셨군요!! 감사합니다!! 근지러운 부분을 확실히 긁어 시원해진 느낌입니다!!
-
민혁
선언과 생성은 다르답니다.
c에서는 int a라고 하면 int가 사용할수 있는 바이트를 미리 초기화 해놓습니다. 이것은 어플리케이션이 끝날때까지 차지하고 있죠.
하지만 자바에서는 다릅니다. 간단히 이야기하자면 자바에서는 100% 포인터만을 가지고 사용한다고 생각하지면 되겠습니다. 맨날 malloc이 이루어지고 맨날 free가 이루어지죠.
이건 단순히 int나 long등의 기본자료형 뿐만이 아니라 class도 마찬가지 입니다. 선언만으로 사용할수 없고,