什么是定义?定义应遵守哪些规则 什么是常量?Java中,常量的定义规则有哪些?

作者&投稿:段姚 (若有异议请与网页底部的电邮联系)
定义是对概念的内涵或语词的意义所做的简要而准确的描述。或者说,定义是认识主体使用判断或命题的语言逻辑形式,确定一个认识对象或事物在有关事物的综合分类系统中的位置和界限,使这个认识对象或事物从有关事物的综合分类系统中彰显出来的认识行为。

定义有不同的方式和技术:

词法
  为一个词或者一个表达提供一个意义相当的表达。比如将“单身汉”定义为“未婚男子”,或者将“煎”定义为在“热油中烧”。有些词如“如果”无法有效地使用其它词来同义描写,词典对这些词一般通过描写其特性的方法来给予一个定义,而不是通过提供一个相当的表达的方式。

情境
  也称上下文定义。有些词无法清晰地定义,但可以通过为所有这个词出现的句子提供一个解释来为这个词做一个定义。也就是说通过使用一个不出现这个词的句子来解释这个词在这个句子里的意义。

内涵
  是将一个物件与其它物件之间不同的所有特征列举出来。比如“所有小于20的质数的集合”是一个特定的集合的内涵定义。

外延
  是描述一个概念或者词的外延,即这个概念或者词所包含的所有事务。
  列举定义是一个特别的外延定义,它列出一个概念或者词所描写的所有的物件。列举定义只适用于有限集合,而且只有在这个集合比较小的情况下才有意义。

实物
  又称直观释义或实指定义。即指定一个词所代表的物件来表达这个词的意思,或者指定数个代表性的物件来表达这个词的意思。一个例子是给某人看吉米·威尔士的图像来表示“吉米·威尔士”这个词的意思,或者给某人看数个典型的狗来说明“狗”的概念。
  一个量的操作定义是这个量的测量过程。

理论
  是使用一个学科的理论对一个词作一个定义,比如“米是光在真空中在1/299,792,458秒所传播的距离”。这个定义是基于狭义相对论的理论做出的定义。

本义狭义
  (Definition by genus and difference)首先列出一个狭义词的广义词,然后说明这个狭义词与这个广义词中不属于这个狭义词的物件之间的区别。

递归
  又称归纳定义,它是使用有意义的方式用一个词来定义这个词本身。一般来说这样的定义包括两个步骤:首先一个或数个特定的物件属于被定义项的集合X;其次所有与X中的元素有一定关系的物件,而且只有与X中的元素有这个关系的物件也属于X。比如以下为自然数的递归定义:首先1是一个自然数,其次比自然数大1的数也是自然数,所有其它数都不是自然数。在做递归定义时要小心避免循环定义。

循环
  是假设别人已经对被定义项有一定的了解。比如“蛋是鸡生的卵,鸡是从蛋里孵出来的”就是这样一个循环定义。假如别人即不知道鸡是什么,又不知道蛋是什么的话这个定义毫无用处。

规定性
  又称规创定义或约定定义,是指将一个定义或者讨论的内容规定在一个范围内。比如有人想要解释啤酒是怎样酿的但不知道清酒是不是啤酒的一种。他可以开篇说:“我所说的啤酒仅包括用小麦酿的啤酒。”

厘定性
  是对词法定义添加附加的条件来延伸词法定义中的定义,更加缩小定义的规范。
  劝导性定义又名说服性定义,是指将一个词定义为一个特别观点的理由,但却保持了词法定义的形式。

  要分析一个定义的好坏要注意定义的特性,其中最重要的是其外延、内涵、歧义和含糊度。
  列举定义指出一定的例子来让对方认识到一个词的意义。
  外延定义列举出一个词的所有元素。
  内涵定义列出一个词的特征,这个定义往往比外延定义更紧凑。
  比如“单身汉”这个词假如要使用外延定义来定义它的话必须将世界上上亿单身汉都列举出来,但是假如用内涵定义的话则一个单身汉首先是一名男子,其次他未婚,因此所有的单身汉是未婚男子,而且只有单身汉才是未婚男子。
  对于哲学家来说一个定义的内涵比起外延要重要得多。比如我们既无法列出世界上所有的单身汉,对这样一个列表也没有兴趣。我们关心的是单身汉与非单身汉之间的区别。一个单身汉的列表无法表示一个新的人是否单身汉。
  假如一个定义不明确的话有两种原因。一个定义可能模棱两可,或者含糊不清,或者两者均有。事实上大多数词即模棱两可有不明确。这并不表示这些词没有意义,即使不明确和含有多种意义的词也有其意义。

下定义应遵守哪些规则?违反这些规则回犯什么逻辑错误~

定义的规则(rule of definition)给概念作出正确定义新必须遵守的规则。规则有四条:(1)定义项的外延与被定义项的外延必须是全同关系。违反这条规则。定义项的外延大于被定义项的外延,就会犯“定义过宽”的错误;定义项的外延小于被定义项的外延,就会犯“定义过窄”的错误。(2)定义项中不能直接地或间接地包括被定义项。违反这条规则就会犯“循环定义”的逻辑错误。在定义项中直接地包含了被定义项的,又称“同语反复”的错误。(3)定义一般只能用肯定的语句形式。如用否定的,就不能揭示概念的内涵,达不到下定义的目的。(4)定义项中不能包括含混的概念和语词。否则,就不可能对概念作出科学的定义。

一、常量定义的基本注意事项。

  在Java语言中,主要是利用final关键字(在Java类中灵活使用Static关键字)来定义常量。当常量被设定后,一般情况下就不允许再进行更改。如可以利用如下的形式来定义一个常量:final double PI=3.1315。在定义这个常量时,需要注意如下内容:

  一是常量在定义的时候,就需要对常量进行初始化。也就是说,必须要在常量声明时对其进行初始化。都跟局部变量或者成员变量不同。当在常量定义的时候初始化过后,在应用程序中就无法再次对这个常量进行赋值。如果强行赋值的话,数据库会跳出错误信息,并拒绝接受这一个新的值。(接口中定义的常量的访问方法)

  二是final关键字使用的范围。这个final关键字不仅可以用来修饰基本数据类型的常量,还可以用来修饰对象的引用或者方法。如数组就是一个对象引用。为此可以使用final关键字来定义一个常量的数组。这就是Java语言中一个很大的特色。一旦一个数组对象被final关键字设置为常量数组之后,它只能够恒定的指向一个数组对象,无法将其改变指向另外一个对象,也无法更改数组(有序数组的插入方法可使用的二分查找算法)中的值。

  三是需要注意常量的命名规则。不同的语言,在定义变量或者常量的时候,都有自己一套编码规则。这主要是为了提高代码的共享程度与提高代码的易读性。在Java语言中,定义常量的时候,也有自己的一套规则。如在给常量取名的时候,一般都用大写字符。在Java语言中,大小写字符是敏感的。之所以采用大写字符,主要是跟变量进行区分。虽然说给常量取名时采用小写字符,也不会有语法上的错误。但是,为了在编写代码时能够一目了然的判断变量与常量,最好还是能够将常量设置为大写字符。另外,在常量中,往往通过下划线来分隔不同的字符。而不想对象名或者类名那样,通过首字符大写的方式来进行分隔。这些规则虽然不是强制性的规则,但是为了提高代码友好性,方便开发团队中的其他成员阅读,这些规则还是需要遵守的。没有规矩,不成方圆。

  总之,Java开发人员需要注意,被定义为final的常量需要采用大写字母命名,并且中间最好使用下划线作为分隔符来进行连接多个单词。在定义final的数据不论是常量、对象引用还是数组,在主函数中都不可以改变。否则的话,会被编辑器拒绝并提示错误信息。

  二、Final关键字与static关键字同时使用。

  由于Javal是面向对象的语言,所以在定义常量的时候还有与其它编程语言不同的地方。如一段程序代码从编辑到最后执行,即使需要经过两个过程,分别为代码的装载与对象的建立。不同的过程对于常量的影响是不同的。现在假设有如下的代码:

  Private static Random rd1=new Random(); //实例化一个随机数生成对象。

  Private final int int1=rd1.nestInt(10); //生成随机数并赋值给常量int1

  Private static final int int2=rd1.nestInt(10); //生成随机数并赋值给常量int2

  这上面的语句的大致含义是,通过Java语言提供的随机数类对象,生成随机数。并把生成的随机数赋值给常量int1与int2。细心的读者会发现,虽然同样是赋值语句,但是以上两个语句中有一个细小的差别,即在第二条语句中多了一个关键字static。关于关键字的用途,笔者在以前的文章中也有谈到过。这个是一个静态的概念。即当利用这个关键字来修饰一个变量的时候,在创建对象之前就会为这个变量在内存中创建一个存储空间。以后创建对对象如果需要用到这个静态变量,那么就会共享这一个变量的存储空间。也就是说,在创建对象的时候,如果用到这个变量,那么系统不会为其再分配一个存储空间,而只是将这个内存存储空间的地址赋值给他。如此做的好处就是可以让多个对象采用相同的初始变量。当需要改变多个对象中变量值的时候,只需要改变一次即可。从这个特性上来说,其跟常量的作用比较类似。不过其并不能够取代常量的作用。

  那么以上两条语句有什么差别吗?我们首先来看Private final int int1=rd1.nestInt(10)这条语句。虽然int1也是一个常量,但是其是在对象建立的时候初始化的。如现在需要创建两个对象,那么需要对这个变量初始化两次。而在两次对象初始化的过程中,由于生成的随机数不同,所以常量初始化的值也不同。最后导致的结果就是,虽然int1是常量,但是在不同对象中,其值有可能是不同的。可见,定义为final的常量并不是恒定不变的。因为默认情况下,定义的常量是在对象建立的时候被初始化。如果在建立常量时,直接赋一个固定的值,而不是通过其他对象或者函数来赋值,那么这个常量的值就是恒定不变的,即在多个对象中值也使相同的。但是如果在给常量赋值的时候,采用的是一些函数或者对象(如生成随机数的Random对象),那么每次建立对象时其给常量的初始化值就有可能不同。这往往是程序开发人员不原意看到的。有时候程序开发人员希望建立再多的对象,其在多个对象中引用常量的值都是相同的。

  要是现这个需求的话,有两个方法。一是在给常量赋值的时候,直接赋予一个固定的值,如abcd等等。而不是一个会根据环境变化的函数或者对象。像生成随机数的对象,每次运行时其结果都有可能不能。利用这个对象来对常量进行初始化的时候,那么结果可能每次创建对象时这个结果都有可能不同。最后这个常量只能够做到在一个对象内是恒定不变的,而无法做到在一个应用程序内是恒定不变的。另外一个方法就是将关键字static与关键字final同时使用。一个被定义为final的对象引用或者常量只能够指向唯一的一个对象,不可以将他再指向其他对象。但是,正如上面举的一个随机数的例子,对象本身的内容的值是可以改变的。为了做到一个常量在一个应用程序内真的不被更改,就需要将常量声明为staitc final的常量。这是什么意思呢?正如上面笔者所说的,当执行一个应用程序的时候,可以分为两个步骤,分别为代码装载与对象创建。为了确保在所有情况下(即创建多个对象情况下)应用程序还能够得到一个相同值的常量,那么就最好告诉编译器,在代码装载的时候就初始化常量的值。然后在后续创建对象的时候,只引用这个常量对象的地址,而不对其再进行再次初始化。就如同Private static final int int2=rd1.nestInt(10)这种形式来定义常量。如此,在后续多次创建对象后,这个常量int2的值都是相同的。因为在创建对象时,其只是引用这个常量,而不会对这个常量再次进行初始化。

  由于加上这个static关键字之后,相当于改变了常量的作用范围。为此程序开发人员需要了解自己的需求,然后选择是否需要使用这个关键字。在初始化常量的时候,如果采用函数(如系统当前时间)或者对象(如生成随机数的对象)来初始化常量,可以预见到在每次初始化这个常量时可能得到不同的值,就需要考虑是否要采用这个static关键字。一般情况下,如果只需要保证在对象内部采用这个常量的话,那么这个关键字就可有可无的。但是反过来,如果需要在多个对象中引用这个常量,并且需要其值相同,那么就必须要采用static这个关键字了。以确保不同对象中都只有一个常量的值。或者说,不同对象中引用的常量其实指向的是内存中的同一块区域。

c语言标识符的定义规则有哪些
答:在C语言中,标识符是用来命名变量、函数、类型和其他实体的名称。标识符的定义规则如下:标识符只能包含字母(包括大写和小写)、数字和下划线。不能以数字开头,也不能包含空格或其他特殊字符。标识符必须是唯一的,不能与关键字(预定义的标识符)冲突。标识符的命名应遵循良好的编程习惯,以提高代码的...

关于三种概念问题:准则、原则、规则
答:个人觉得,准则多指大家在日常中墨守的,大家都公认的一种标准,是共守性的;原则,应该指个人在日常生活中,对自己为人处世的标准,是个人性的;规则,多指机构或活动中,要求大家遵守的一种标准,是定律性的,也是共守性的; 在人品道德生活层次来讲,个人觉得,最主要是你要遵守规则,最关键是要了解...

什么是下定义?下定义应注意什么
答:“下定义”必须抓住被定义事物的基本属性和本质特征。例如:多采用判断单句的形式。其格式多为“×××(种概念) 是×××的×××(属概念)”,如:无理数(一种概念)是(判断词)无限而不循环(本质特征) 的小数(属概念);或“×××叫×××”,如:无限而不循环的小数叫无理数。

责任的名词解释定义是什么
答:责任是我们在社会中的一种职责和任务,身处社会的个体成员必须遵守的规则和条文,带有强制性。以下是我为大家整理的责任的名词解释,希望对大家有帮助 责任的意思 责任是一种职责和任务,身处社会的个体成员必须遵守的规则和条文,带有强制性。通常可以分为两个意义,一指分内应做的事,如职责、尽责...

应用文的定义是什么?
答:[编辑本段]应用文的概念 应用文,指日常生活或工作中经常应用的个人简历、调查报告、实习报告、思想汇报、工作总结、求职演讲、合同样本、申请书等。[1] 应用文是人类在长期的社会实践活动中形成的一种文体,是人们传递信息、处理事务、交流感情的工具,有的应用文还用来作为凭证和依据。随着社会的发展,人们在工作和生...

规律的定义是什么意思
答:这里只有CL元素发生氧化还原,KCLO3中的+5价CL得5个电子,HCL中的-1价CL失一个电子,根据得失电子数平衡,那么要有5个HCL失去5个电子才能平衡,另外1个HCL中的CL转到KCL中了。问题四:什么是定义?定义应遵守哪些规则 定义是对概念的内涵或语词的意义所做的简要而准确的描述。或者说,定义是认识...

定义 和 规定 有什么区别?拜托各位大神
答:定义 和 定理 差不多 ,是经过证明的,有一定数学意义的,且一定是正确的。 规定 不一定有数学意义,比如“规定乘除运算比加减运算优先级高”不能帮助数学运算的,还有,规定 不一定是正确的,比如“规定根号-1无意义”,它只是一种人为的为帮助解决问题所提出的。

函数的定义是什么
答:这里应该注意的是,值域C并不一定等于集合B,而只能说C是B的一个子集.2.函数的三要素 定义域A,值域C以及从A到C的对应法则f,称为函数的三要素.由于值域可由定义域和对应法则唯一确定,所以也可以说函数有两要素:定义域和对应法则.两个函数当且仅当定义域与对应法则分别相同时,才是同一函数....

潜规则的定义和常见应用场景是什么?
答:合理的行为模式得以延续和强化,如给予医生小费以示尊重(合理的要发扬光大),而那些违背道德伦理的行为则应尽早遏制(不合理的要扼杀在摇篮里)。例如,当我们需要某个同事帮忙时,可能需要送上心意(找人办事,送礼是常见的潜规则);想在职场晋升,可能需要与上级建立私人关系(想当官,与领导互动是潜...

什么叫规定性定义
答:定义来源 其中规定性定义是作者所下的定义要求这个被界说的术语在后面的讨论中始终表示这种规定的意义.描述性定义是适当地描述被界说的对象或使用该术语的方法.纲领性足义则是描述性定义和规定性定义的混合 定义来源 一般规定性是指国家治理必须依法进行是要法治不要人治国家机器要依据阶级的意志来运转而...