Fully qualified name - Wikipedia https://en.wikipedia.org/wiki/Fully_qualified_name

In computer programming, a fully qualified name is an unambiguous name that specifies which objectfunction, or variable a call refers to without regard to the context of the call.[citation needed] In a hierarchical structure, a name is fully qualified when it "is complete in the sense that it includes (a) all names in the hierarchic sequence above the given element and (b) the name of the given element itself."[1]

Programming

Fully qualified names explicitly refer to namespaces that would otherwise be implicit because of the scope of the call.[2] While always done to eliminate ambiguity, this can mean different things dependent on context.

Commonly encountered applications of the notion have been given their own names, such as the fully qualified domain name and the fully qualified file name.

Examples

To distinguish a fully qualified name from a regular name, C++TclPerl and Ruby use two colons (::), and Java uses dots (.), as does Visual Basic .NET.[3] and C#.[4] In Java, ActionScript,[5] and other object-oriented languages the use of the dot is known as "dot syntax".[6] Other examples include:

  • As an example of a relational database, in Microsoft SQL Server the fully qualified name of an object is the one that specifies all four parts: server_name.[database_name].[schema_name].object_name.[7]
  • In Perl, a fully qualified scalar ($scalar) that is in the package package2 would be referred to as $package2::scalar[8]
  • In Ruby, the fully qualified name of a class is the name of such class with all its parent modules, as Vehicles::Cars::Factory would be the fully qualified name of Factory class within Cars module within Vehicles module.
  • In COBOL, a fully qualified data item name can be created by suffixing a potentially ambiguous identifier with an IN (or OF) phrase. For example, multiple data item records might contain a member item named ACCOUNT-ID, so specifying ACCOUNT-ID IN CUSTOMER serves to disambiguate a specific ACCOUNT-ID data item, specifically, the one that is a member of the parent CUSTOMERdata item. Multiple clauses may be necessary to fully disambiguate a given identifier, for example, ACCOUNT-ID IN CUSTOMER IN LAST-TRANSACTION. This syntax is equivalent to the "dotted" notation employed in many object-oriented programming languages, but with the identifiers specified in reverse order.

Filenames and paths

The term fully qualified file name means a file on a computer whose exact name is completely specified such that it is unambiguous and cannot be mistaken for any other file on that computer system.[9] It is somewhat equivalent on the Internet to a URL specifying the full name of the computer and the entire name of a particular document as a file. The alternative is an unqualified file name or a partially qualified file name.

  • On Unix-style systems, DOS, and Microsoft Windows, the name "sample" refers to a file in the current directory named "sample". If the current directory is changed, then the file referred to by the name "sample" is different. If you start the filename with "/" indicating the root directory as in "/Users/Name/sample", then on Unix this is a fully qualified file name. So, for example, instead of referring to ./foo/bar/baz.sh in /home/user/quz, which uses a relative pathname, the fully qualified name would be /home/user/quz/foo/bar/baz.sh.[10] In DOS, the name is still relative to the root directory of the current disk, so to get a fully qualified file name, the file name must be prefixed with the drive letter and a colon, as in "C:\Users\Name\sample", where "C:" specifies the "C" drive.
  • Also on the above systems, some programs such as the command-line shell will search a path for a file. Inserting a leading (back)slash, as in "./name", will stop the searching of the path. This is a partially qualified name, but not a fully qualified name as it still depends on the current directory. A fully qualified name, because it contains (back)slashes, will always stop a path search.
  • On the mainframe operating system MUSIC/SP, if one asks for the file name "X", one is making an unqualified reference either to the file X in the user's library, or to the file X in the common library if the user does not have a file named X and one does exist in the common library. If, however, one were to refer to "*COM:X" one is using a fully qualified file name reference to the file X in the common library even if they have a different file named X in their library. Similarly, a reference to "*USR:X" would mean the file in their own library, and "MA45:X" would be a fully qualified file name referring to the specific file X in the library of user MA45.
  • On the RSTS/E operating system on the PDP-11 minicomputer, specifying a file "X.X" would refer to a file in one's own directory. Referring to "$X.X" would be referring to the file "[1,2]X.X" but to fully qualify the file name, one would have to indicate the device, so "SY:[46,145]MYFILE.TXT", "SY:$X.X", or "SY:[1,2]X.X" (the last two examples meaning the same thing) would be a fully qualified file name under RSTS/E.
  • On the UNIVAC Series 90 mainframe operating system VS/9, specifying a file "X" could mean either the file X in the account of that user, or could mean the file X in the library of the system manager, $TSOS. However, specifying "$S0103.X" would be a fully qualified file name.
  • This term can also include the case where one prefixes a fully qualified file name with a specific computer name as a prefix to a file name (where the particular system permits referencing a file on another system), so long as the exact name is unambiguous.

Path names

Fully qualified path name (FQPN) is the full path of a resource, directory or file, stored in a computer. It is composed by the full path to the resource and its syntax depends on the operating system. In Unix-like operating systems it is represented in the following form: /root/path-to/file[OR]directory, while in DOS and Microsoft Windows it is represented in the following form: [Drive]:\path-to\file.ext[OR]directory. FQPN is also used in Networking and takes the following form: \root\FQDN\path-to\file.ext[OR]directory, where /root/ is the root directory, the first or top-most directory in a hierarchy, and, in this case, the rooted treeFQDN is the fully qualified domain name or node. It is also used in bootstrappingcomputer programming and in computer science referencing.

Domain names

See also

Flume 1.8.0 User Guide — Apache Flume http://flume.apache.org/FlumeUserGuide.html#blobhandler

handler org.apache.flume.source.http.JSONHandler The FQCN of the handler class.

FQCN stands for Fully-Qualified Class Name (Java)

Fully qualified name FQCN的更多相关文章

  1. 源码安装Apache,报错:Cannot use an external APR with the bundled APR-util和httpd: Could not reliably determine the server's fully qualified domain name, using

    一.解决APR和APR-util错误: 1.1.安装APR: [root@ganglia httpd-2.2.23]# cd srclib/apr [root@ganglia apr]# ./conf ...

  2. 重启Apache报错apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName ... waiting的解决方法

    启动apache提示 : apache2: Could not reliably determine the server's fully qualified domain name, using 1 ...

  3. apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName的解决

    apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ...

  4. apache2: Could not reliably determine the server's fully qualified domain name

    错误信息:apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 ...

  5. Could not reliably determine the server's fully qualified domain name

    启动apache报错: [root@namenode1 ]# service httpd start Starting httpd: httpd: Could not reliably determi ...

  6. Starting httpd:Could not reliably determine the server's fully qualified domain name

    #service httpd start #Starting httpd: httpd: Could not reliably determine the server's fully qualifi ...

  7. apache启动问题: Could not reliably determine the server's fully qualified domain name

    [root@rusky]# service httpd startStarting httpd: httpd: apr_sockaddr_info_get() failed for ruskyhttp ...

  8. httpd: Could not reliably determine the server's fully qualified domain name

    作者:Younger Liu, 本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 未本地化版本许可协议进行许可. 问题描述: AH00558: httpd: Could not reliab ...

  9. linux启动httpd服务出现 Could not reliably determine the server`s fully qualified domain name.

    安装好apache启动httpd服务时,出现httpd: Could not reliably determine the server's fully qualified domain name,  ...

随机推荐

  1. MUTT+MSMTP利用163服务器发送邮件

    监控系统发送告警邮件,我们自己搭建邮件服务器,成本较高,所以可以使用163等第三方MTA帮助我们发送.MUTT+MSMTP是一个很好的选择,具体实现如下: tar -xvf msmtp-1.6.5.t ...

  2. js prototype 理解

    简单理解:prototype对象是实现面向对象的一个重要机制.每个函数也是一个对象,它们对应的类就是 function,每个函数对象都具有一个子对象prototype.Prototype 表示了该函数 ...

  3. python课文题目格式

    import win32com from win32com.client import Dispatch,constants w = win32com.client.Dispatch('Word.Ap ...

  4. 非常多学ThinkPHP的新手会遇到的问题

    在模板传递变量的时候,非常多视频教程都使用$v.channel的方式.例如以下: <a href="{:U('Chat/set',array('id'=>$v.channel)) ...

  5. boost准模板库内存管理中pool和object_pool的使用

    首先,在敲代码之前,必须改动一个问题.要不然,无法链接: boost安装文件夹:D:\boost.       找到D:\boost\boost_1_55_0\include\boost-1_55\b ...

  6. 4种方法让SpringMVC接收多个对象 <转>

    问题背景: 我要在一个表单里同时一次性提交多名乘客的个人信息到SpringMVC,前端HTML和SpringMVC Controller里该如何处理? 第1种方法:表单提交,以字段数组接收: 第2种方 ...

  7. rp2836 网卡以及串口与接插件位置关系

    P3     ETH1 P6     ETH0 P7     /dev/ttyS3 调试口 P13-1  /dev/ttyS2  rs485+ P13-2  /dev/ttyS2  rs485- P1 ...

  8. lnmp服务器的目录信息

    LNMP状态管理命令: LNMP状态管理: /root/lnmp {start|stop|reload|restart|kill|status}Nginx状态管理:/etc/init.d/nginx ...

  9. 日期-date.js

    Date.prototype.format = function(format) { var o = { "M+" : this.getMonth() + 1, // 月 &quo ...

  10. Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/base/Function问题解决

    selenium 目录下的lib文件夹下的所有包都加到类库里