문제

PHP에서, 우리는 (적어도 좋은 프로그래머) 항상 소문자 문자로 일반 변수 이름을 시작하지만, 클래스 변수/객체는 상류 문자를 구별 할 수 있습니다. 같은 방식으로 우리는 소문자 문자로 일반 파일 이름을 시작하지만 대문자 문자가있는 클래스가 포함 된 파일을 시작합니다.

예 :

<?php
$number=123;
$string="a string";
$colors_array=array('red','blue','red');
$Cat=New Cat();
?>

컨벤션이 Java에서 동일합니까, 즉 상류로 시작하지만 다른 곳에서 읽은 것처럼 모든 것이 소문자로 시작됩니까?

도움이 되었습니까?

해결책

일반적으로 모든 변수는 소문자로 시작합니다.

int count = 32;
double conversionFactor = 1.5d;

어떤 사람들은 모든 경우에 정적 상수를 넣는 것을 좋아합니다.

public static final double KILOGRAM_TO_POUND = 2.20462262;

약어를 다룰 때 상황이 더 성가 시게되며, 사용해야하는지에 대한 실제 표준은 없습니다.

HTMLHandler myHtmlHandler; 

또는

HTMLHandler myHTMLHandler.

이제 어느 쪽이든, 클래스 이름 (Object, String, Htmlhandler)은 항상 대문자로 시작하지만 개별 객체 변수는 소문자로 시작합니다.

다른 팁

당신은에서 이름을 찾을 수 있습니다 Java 코드 규칙.

빠른 요약 :

  • 수업에 사용하십시오 UpperCamelCase.
  • 클래스 멤버 및 로컬 변수의 경우 사용합니다 lowerCamelCase
  • 패키지의 경우 Reverse Uri를 사용하십시오 org.acme.project.subsystem
  • 상수의 경우 사용하십시오 ALL_CAPS.
  • 변수 및 메트로 스플리 키스
  • 클래스 클리 케티
  • constants_ike_this

컨벤션은 클래스 이름이 대문자로 시작한다는 것입니다. 변수 이름은 Camelcase입니다. 변수가 객체를 참조하더라도 여전히 소문자로 시작합니다.

이것 페이지 도움이 필요합니다.

정적에 대한 방법과 파스칼 케이스와 같은 Camelcase를 사용하는 것에 대해 어떻게 생각하십니까? 어떤 메소드가 정적인지 확인하면서 문제가 없기 때문에 매우 도움이 될 수 있다고 생각합니다. 내 제안입니다

컨벤션은 실제로 코딩하는 개별 장소에 달려 있습니다.

일반적으로, 내가 본 클래스에서 낙타가 낙타 (상류), 메소드는 소문자로 시작하며, 모든 곳에서 본 변수 (일부 낙타, 일부 낙타가있는 일부 낙타 케이스 (편집 : 언급 된대로. 위의 이것은 표준입니다), 일부는 헝가리 표기법이 있습니다). 그것은 당신의 스타일과 당신이 작업중 인 프로젝트가 채택한 스타일에 달려 있습니다.

일부 사람들 (나가 아닌)은 인스턴스 변수를 "this"로 접두사로 인스턴스 변수와 구별하는 것을 좋아합니다. 이것은 또한 동일한 이름의 인스턴스 변수에 매개 변수를 할당 할 때 발생하는 문제를 해결합니다.

public ConstructorMethod(MyVar variable) {
    this.variable=variable;
}

그러나 어떤 사람들은 당신이 항상 그 패턴을 사용해야한다고 생각하지만, 나는 그것에 대해 미쳤지 않습니다. 나는 당신이 당신의 방법과 수업을 작게 유지하면 과잉이라고 생각합니다.

또한 일부 사람들은 매개 변수에 명명 패턴을 사용합니다. 이것은 생성자에서 인스턴스 변수에 할당 할 때 유용합니다.

public ConstructorMethod(MyVar pVariable) {
    variable=pVariable;
}

일반적으로 패턴은입니다 pVariable 또는 _variable. 나는 이것보다 더 읽기 쉬운 것을 발견하기 때문에 때때로 이것을 사용하지만, 당신의 javadoc을 덜 읽기 쉽게 만드는 단점이 있습니다.

어쨌든, 나는 항상 이러한 패턴을 사용한다는 아이디어를 좋아하지 않지만, 알기가 좋지 않지만 코드 전체에서 차별화하는 데 도움이 필요한 경우 Eclipse에 다른 색상으로 표시하도록 지시하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top