>백엔드 개발 >PHP 튜토리얼 >여러 공통 언어의 네임스페이스 특성

여러 공통 언어의 네임스페이스 특성

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-07-29 08:56:39980검색

네임스페이스는 클래스를 논리적으로 구성하고 이름 충돌을 방지하는 방법을 제공합니다.

여러 공용 언어

C

네임스페이스는 중첩 가능

중첩된 네임스페이스는 다른 네임스페이스 네임스페이스에 정의된 이름을 참조합니다. 중첩된 네임스페이스는 중첩된 범위입니다. 내부 네임스페이스에 선언된 이름은 외부 네임스페이스에 선언된 동일한 이름의 멤버를 숨깁니다.

<code><span>int</span> x = <span>20</span>; 
<span>namespace</span> outer { 
  <span>int</span> x = <span>10</span>; 
  <span>namespace</span> inner { 
    <span>int</span> z = x; 
  } 
} 
  
<span>int</span> main() 
{ 
  std::cout << outer::inner::z; <span>// 输出10 </span><span>return</span><span>0</span>; 
} </code>

C#

중첩 네임스페이스

네임스페이스는 네임스페이스 선언에 선언되어 있으며, 각 네임스페이스는 "."으로 구분됩니다.

예:

<code>namespace N1.N2
{
class A {}
class B {}
}
在语义上等效于
namespace N1
{
namespace N2
{
class A {}
class B {}
}
} </code>

Java

<code><span>package</span> cn.org.web3d.x3dpad</code>

Java의 네임스페이스는 독립적인 최상위 수준이 있는 한 도메인 이름을 사용하면 프로젝트의 절대적인 고유성을 보장할 수 있습니다.

Objective-C

Objective-C 애플리케이션의 모든 클래스 이름은 전역적으로 고유해야 합니다. 이름 지정은 우아한 언어에 비해 항상 Objective-C의 약점이었습니다. Apple에서는 공식 라이브러리 및 프레임워크에 두 글자의 접두사를 사용하는 클래스 이름을 공식적으로 권장합니다. 타사 개발자의 경우 클래스 이름을 지정할 때 접두사로 3자 이상을 사용하는 것이 공식 권장 사항입니다.

PHP

<code><span>namespace</span> Vendor\Package\<span>...</span>..</code>

1차 Vendor는 고유 식별자여야 함을 강조합니다. 즉, 최상위 도메인 이름이 {Vendor여야 함을 의미합니다. }.com. 그래야만 프로젝트의 절대적인 고유성을 보장할 수 있습니다. 예를 들어 이런 생각이 들었을 때 나는 즉시 자신을 보호하기 위해meanir.com이라는 도메인 이름을 등록했습니다.

이상에서는 관련 내용을 포함하여 여러 공통 언어의 네임스페이스 기능을 소개했습니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.