精华内容
下载资源
问答
  • 编程语言的三大发展阶段:面向机器语言、面向过程语言、面向对象语言 ; 其中面向对象语言主要体现三个特征:封装性、继承、...2、声明的变量称为对象变量,也简称 对象 ; 3、class 关键字是用来定义类 ; 4、...

    编程语言的三大发展阶段:面向机器语言、面向过程语言、面向对象语言 ;

    其中面向对象语言主要体现三个特征:封装性、继承、动态 ;

    类的定义:类声明和类体。基本格式如下:

    class 类名{

       类体

    }

    特点:

    1、类是Java程序的基本要素,一个Java应用程序就是由若干个类所构成;

    2、类声明的变量称为对象变量,也简称 对象 ;

    3、class 关键字是用来定义类 ;

    4、类的目的是抽象出一类事物共有的属性和行为,并用一定的语法格式来描述所抽象出的属性和行为;

    4、类名必须是合法的Java标识符;

    Java标识符详细说明:(以及中文标识符的说明)

    https://blog.csdn.net/LagerSwan/article/details/104081548


    类的声明:

    如下所示:

    class Number {

    .....

    }

    class 数字 {

    .....

    }

    其中 class Number 与 class 数字 称为类的声明,而 Number 和 数字 则为类名 ;


    类体,即 { } 中的内容:

    类体的内容由如下两部分构成:

    • 变量的声明:用来存储属性的值 ;(体现了对象的属性)
    • 方法的定义:方法可以对类中声明的变量进行操作;(体现了对象的行为)

    如下代码演示:

    public class Class_Test {
    	int number = 10;
    	double numberd = 11.111;
    	double TestDouble() {
    		double numbers = 100 ;
    		numbers += numberd;
    		return numbers;
    	}
    	public static void main(String[] args) {
    		Class_Test test = new Class_Test();
    		System.out.println(test.TestDouble());
    	}
    }

    在以上代码中,声明了一个类 Class_Test ,两个变量 number 与 numberd ,一个方法 TestDouble() ,一个主方法 main () ;


    成员变量的定义:

    一、成员变量的类型:

    成员变量的类型可以是Java中的任何一种数据类型,包括了基本数据类型:整形、浮点型、逻辑类型、字符类型 ;引用类型中的:数组、对象和接口;  

    如下代码演示:

    public class Class_Test {
    
    	public static void main(String[] args) {
    		
    		//成员变量的说明
    		//基本数据类型的成员变量
    		int testt = 11 ;
    		float testf = 11.111f ;
    		double testd = 11.11111 ;
    		//引用类型的变量
    		int a [] ;
    		Class_Test test ;
    		
    	}
    }

    在以上代码中,成员变量:testt,testf,testd 是基本数据类型的变量;a [ ] ,test是引用类型的变量,a [ ] 为数组的变量,test 为类声明的变量,即类对象;

    二、成员变量的有效范围:

    成员变量在整个类内都是有效的,其有效性与它在类体中声明的先后位置是不关的;

    如下代码演示:   最终输出: 110

    public class Class_Test {
    	
    	//成员变量的有效范围:
    	int number = 11 ;
    	int Int_Test(){
    		int int1 = number * digit ;
    		return int1;
    	}
    	int digit = 10 ;
    
    	public static void main(String[] args) {
    		//类体的说明
    		Class_Test test = new Class_Test();
    		System.out.println(test.Int_Test());	
    	}
    }
    

    不建议大家这样编写程序,当代码量多时,对代码的可读性有一定的影响,建议先声明成员变量,再定义方法;

    三、成员变量的编写风格:

    建议大家在声明成员变量时,变量的名字使用驼峰规则,即变量名由多个单词组成时,从第二个单词开始的其他单词的首字母大学;如:computerArea 、ClassExceptionShow 


    方法的使用:

    在类体中,方法的定义包括两部分:方法头、方法体 ;  一般格式如下:

    方法头 {

       方法体

    }

    一、方法头说明

    方法头由方法的类型、名称、名称后面的 () 以及 ()里面的参数列表所构成;

    如下代码演示:

    //无参数的方法头
    double testd (){
        return 11.111;
    }
    
    //有参数的方法头, x 和 y 即为参数
    double testd (double x,double y){
        return x+y;
    }

    二、方法体说明:

    方法体即 方法()后面的 { } 以及 { } 里面的内容;

    在方法体中声明的变量为局部变量,而不是成员变量,局部变量只在方法体内有效,而且与声明时的前后位置有关;

    如下代码演示:

    double testd = 10 ;
    double testd (double x,double y){      //参数 x,y是局部变量
       double sum;                         //参数 sum 是局部变量
       sum = x + y ;
    
       if(sum>x){
           sum += testd ;         //参数 testd 是成员变量(全局变量)
    }
    
        return sum;        //return 语句,返回 sum 的值
    }

    局部变量的介绍:

    1、局部变量不同与成员变量,局部变量只在方法中有效,而且与其声明的位置顺序有关;

    2、若局部变量声明在一个复合语句中,那么该局部变量的有效范围只在复合语句中有效;

    double testd (double x,double y){      //参数 x,y是局部变量
    	   double sum;                         //参数 sum 是局部变量
    	   sum = x + y ;
    	   if(sum != 0){
    	       int ints = 1;        // ints 为复合语句中的局部变量
    	       sum += ints ;
    	}
            double bottom = 1.1;
            bottom += ints ;         //程序报错:ints cannot be resolved to a variable
    	    return sum;
    	}

    3、若局部变量声明在一个循环语句中,那么该局部变量的有效范围只在循环语句中有效;和以上复合语句是一样的;


    总结:成员变量与局部变量的区别

    1、局部变量不同与成员变量,局部变量只在方法中有效,而成员变量在整个类中都有效;

    2、局部变量与其声明的位置顺序有关,而成员变量与其声明的位置顺序无关;

    3、若局部变量的名字和成员变量的名字相同,那么成员变量会被隐藏,即在方法体中成员变量暂时是无效的,如下代码演示:

    class Test_Variable {
        int x = 10 , y ;
       void tests () {
          int x = 5 ;
          y = x + 10 ; //y的值为 15 ,而不是20,此时成员变量 x = 10 在该方法体中,暂时失效;
       }
    
    }

    4、当想使用方法中被隐藏的成员变量,可以使用关键字 this 进行调用,如下代码演示:

    class Test_Variable {
        int x = 10 , y ;
       void tests () {
          int x = 5 ;
          y = this.x + 10 ; //此时 y 的值为 20 ,而不是15,this.x调用的为成员变量 x = 10 ;
       }
    
    }

    5、成员变量有默认值,而局部变量没有默认值,因此在使用局部变量时,要确保该局部变量是有初始值的,否则程序报错;

    class Test_Variable {
    
               int  y ;
    	   void tests () {
    	      int x;       //报错:The local variable x may not have been initialized
    	      y = x + 10 ; 
    	   }
    
    }

     

     

     

    展开全文
  • java类定义的变量和类方法里面定义的变量有什么区别和联系 为什么要再方法当中定义变量,统一在类里面,方法外面定义变量不是更方便快捷么
  • javamain方法中定义变量

    千次阅读 2020-10-12 15:41:43
    main方法里面定义的是局部变量,方法里面产生的变量属于局部变量,不需要加任何限定符,因为这些变量此方法的栈帧才能访问到。方法里面涉及到的成员变量已经有了限定符,不需要再加了。 public是用来修饰...

    main方法里面定义的是局部变量,方法里面产生的变量属于局部变量,不需要加任何限定符,因为这些变量仅在此方法的栈帧中才能被访问到。方法里面涉及到的成员变量已经有了限定符,不需要再加了。

    public是用来修饰类,方法、类变量、成员变量的,方法里面定义的是局部变量,只有在方法内部有效,本身是有作用域限制的,不能使用访问修饰符。

    访问修饰符里面没有default这个关键字,不写的情况称为“缺省",不叫“默认”,所以也不要用default限定符尝试了,一般局部变量的作用域默认是在package范围内。

    展开全文
  • shell变量的分类及定义

    千次阅读 2017-01-01 22:10:20
    环境变量称为全局变量,可以建立它们的shell及其派生出来的任意子进程shell使用;环境变量又分为自定义环境变量和Bash内置的环境变量。 普通变量称为局部变量,只能创建它们的shell函数或shell脚本...

    shell变量的类型:

    shell变量分环境变量(全局变量)和普通变量(局部变量)

    环境变量亦称为全局变量,可以在建立它们的shell及其派生出来的任意子进程shell中使用;环境变量又分为自定义环境变量和Bash内置的环境变量。

    普通变量亦称为局部变量,只能在创建它们的shell函数或shell脚本中使用,一般由开发者用户创建。

    环境变量的作用:一般用于定义shell的运行环境,保证shell命令的正确执行,Shell通过环境变量来确定登陆用户名,命令路径,终端类型,登陆目的等。

    环境变量的创建:可以在命令行中设置创建,但用户退出命令行时这些变量值就会丢失,因此,若希望永久保存环境变量,可在用户家目录下的 .bash_profile 或者 .bashrc 文件中或全局配置 /etc/bashrc 或 /etc/profile 文件或 /etc/profile.d/ 中定义。将环境变量放在这些文件中,每次用户登陆时这些变量值都会被初始化一次。

    一般,环境变量都为大写,使用export命令导出定义环境变量

    内置的环境变量,如HOME, PATH, SHELL, UID,USER,HOSTNAME 等,都是在用户登陆之前就已经被/bin/login程序设置好了。

    自定义的环境变量: 如果想要设置环境变量,就要在给变量赋值之后或设置变量时使用export命令。带-x选项的declare内置命令也可以完成同样的功能。(注意:输出变量时不要在变量名前加$)

    自定义环境变量的设置方法:
    <1> export 变量名=value

    [root@localhost SHELL]# export NAME=nihao
    [root@localhost SHELL]# env | grep NAME
    HOSTNAME=localhost.localdomain
    NAME=nihao    //设置成功,但是此种方式不能永久生效
    USERNAME=root
    LOGNAME=root
    [root@localhost SHELL]# 
    
    要想让其生效必须将其放在用户的环境变量( .bashrc.bash_profile )或者全局的环境变量( /etc/profile 或 /etc/bashrc 或 /etc/profile.d )

    <2> 变量名=value : export 变量名

    <3> declare -x 变量名=value (很少用)

    对环境变量的操作:

    <1>用echo或者printf打印环境变量(注意:输出环境变量时,要加$符号)

    [root@localhost SHELL]# echo $USER
    root
    [root@localhost SHELL]# printf $HOME
    /root[root@localhost SHELL]# printf "$HOME\n"
    /root
    [root@localhost SHELL]# 
    
    $HOME  用户登陆时进入的目录
    $UID   当前用户的UID(用户标识)相当于 id-u
    $PWD   当前工作目录的绝对路径名
    $SEHLL  当前shell
    $USER   当前用户

    <2>用env(printenv) 或者set显示环境变量
    一般不用set,set的显示比较乱

    [root@localhost SHELL]# env
    XDG_VTNR=1
    XDG_SESSION_ID=1
    DBUS_STARTER_ADDRESS=unix:abstract=/tmp/dbus-MQJKrUWfi8,guid=5a9152fe944f715e8f75d17d5868e73d
    GPG_AGENT_INFO=/run/user/0/keyring-LQZGWn/gpg:0:1
    VTE_VERSION=3406
    XDG_MENU_PREFIX=gnome-
    SHELL=/bin/bash
    TERM=xterm-256color
    WINDOWID=33554438
    GNOME_KEYRING_CONTROL=/run/user/0/keyring-LQZGWn
    QT_GRAPHICSSYSTEM_CHECKED=1
    USER=root
    

    <3>用unset消除本地变量或环境变量(unset 时不用加$符号)

    [root@localhost SHELL]# export NAME=MMMMM    //设置环境变量
    [root@localhost SHELL]# env | grep NAME      //查找环境变量NAME
    NAME=MMMMM
    USERNAME=root
    LOGNAME=root
    [root@localhost SHELL]# unset NAME          //删除环境变量
    [root@localhost SHELL]# echo $NAME          //打印环境变量,没有输出,说明删除环境变量成功
    
    [root@localhost SHELL]# 
    

    普通变量的定义:

    变量名=value

    直接定义变量内容的方法;输出变量内容时会将变量内容里的变量或命令(要反引下)解析之后再输出,一般为简单连续的数字,字符串,路径名等,如果内容中有空格等特殊字符,则不能完整输出,需要改加双引号

    [root@localhost SHELL]# d=123456
    [root@localhost SHELL]# c="192.168.1.2-$d"
    [root@localhost SHELL]# c=192.168.1.2-$d
    [root@localhost SHELL]# echo $c
    192.168.1.2-123456
    [root@localhost SHELL]# 
    
    //变量内容中有命令要反引下 反引符号为 ``
    [root@localhost SHELL]# d=123456
    [root@localhost SHELL]# c="192.168.1.2-$d"
    [root@localhost SHELL]# c=192.168.1.2-$d
    [root@localhost SHELL]# echo $c
    192.168.1.2-123456
    [root@localhost SHELL]# c=192.168.1.2-$`echo $d`
    [root@localhost SHELL]# echo $c
    192.168.1.2-$123456
    [root@localhost SHELL]#

    变量名=’value’

    通过单引号定义变量;输出变量内容时单引号里面是什么就输出什么,即使内容中有变量和命令也会将它们原样输出。

    变量名=”value”

    通过双引号定义变量,输出变量时引号里的变量及命令(要反引下)会经过解析后才输出该变量的内容,而不是将引号中的变量或命令原样输出。

    shell中变量名及变量内容的要求:

    变量名 一般是由字母,数字,下划线组成。一般以字母或下划线开头,但是数字不可以。

    变量名的输出:

    $变量名表示变量输出,使用$变量名 或者 ${变量名} 是等同的。

    [root@localhost SHELL]# a=192.168.1.2
    [root@localhost SHELL]# echo $a
    192.168.1.2
    [root@localhost SHELL]# b='192.168.1.2'
    [root@localhost SHELL]# echo $b
    192.168.1.2
    [root@localhost SHELL]# c="192.168.1.2"
    [root@localhost SHELL]# echo $c
    192.168.1.2
    [root@localhost SHELL]# echo "a=$a"
    a=192.168.1.2
    [root@localhost SHELL]# echo "b=$b"
    b=192.168.1.2
    [root@localhost SHELL]# echo "c=${c}"
    c=192.168.1.2
    [root@localhost SHELL]# export NAME=MMMMM
    [root@localhost SHELL]# echo "${NAME}"
    MMMMM
    [root@localhost SHELL]# 
    
    连续普通字符串赋值给变量,不管是否使用了引号(单引号或双引号),内容是什么,就会打印出什么
    
    但是当不是连续的普通字符串时:
    [root@localhost SHELL]# a=192.168.1.2-$a
    [root@localhost SHELL]# echo "a=$a"
    a=192.168.1.2-192.168.1.2
    [root@localhost SHELL]# b='192.168.1.2-$a'
    [root@localhost SHELL]# echo "b=$b"
    b=192.168.1.2-$a
    [root@localhost SHELL]# c="192.168.1.2-$a"
    [root@localhost SHELL]# echo "c=${c}"
    c=192.168.1.2-192.168.1.2-192.168.1.2
    [root@localhost SHELL]# echo "c=$c"
    c=192.168.1.2-192.168.1.2-192.168.1.2
    [root@localhost SHELL]# 
    
    

    把命令的结果作为变量内容的定义方法

    变量名=命令 //命令用反引号包裹
    变量名=$(命令)

    [root@localhost SHELL]# ddddd=`ls`
    [root@localhost SHELL]# echo $ddddd
    test1.sh test.sh UNIX.shell范例精解(第4版).pdf
    [root@localhost SHELL]# ls
    test1.sh  test.sh  UNIX.shell范例精解(第4版).pdf
    [root@localhost SHELL]# e=$(ls)
    [root@localhost SHELL]# echo $e
    test1.sh test.sh UNIX.shell范例精解(第4版).pdf
    [root@localhost SHELL]# 
    
    展开全文
  • 类定义中的成员变量有两种形式:实例变量类变量 ...类变量属于而不属于任何一个具体的对象,它保存内在区的公共存储单元。因此不管建立了多少对象都只存在一个副本,即使类中没有建立任何对象,

    类定义中的成员变量有两种形式:实例变量和类变量

    实例变量:这种形式的变量与具体对象相关联,不同的对像这个变量的值就不一样,举例来说明圆这个类,其不同实例对象也就是不同的圆其半径也是不一样的。

    类变量:这种形式的变量与类相关,并且由类中所有的对象共享。类变量属于类而不属于任何一个具体的对象,它被保存在该类内在区的公共存储单元中。因此不管建立了多少类对象都只存在一个副本,即使类中没有建立任何对象,它们也存在。类变量通过关键字static声明,所以也可称为静态变量。


    与类定义中变量类似,成员方法有两种形式:实例方法和类方法。实例方法只能被关联的特定对象所执行,即只能通过对象调用。因此如果没有对象存在,就不能执行实例方法。类方法则不同,即使在类中不存在任何对象时,也可以执行类方法。

    提示:对于静态方法与实例方法的使用,有两点需要特别注意。

    1 类方法中不能引用实例变量。由于static方法是发球

    展开全文
  • Freemarker模版中定义变量

    千次阅读 2015-04-18 11:35:19
    模板中定义变量有三种类型: Ø plain变量:可以模板的任何地方访问,包括使用include指令插入的模板,使用assign指令创建和替换。 Ø 局部变量宏定义体有效,使用local指令创建和替换。 Ø 循环...
  • python中变量定义、命名

    万次阅读 2018-07-18 19:16:14
    变量名只有第一次出现才是定义变量(变量名再次出现,不是定义变量,而是直接使用之前定义的变量) 2.变量的定义 python ,每个变量使用前都必须赋值,变量赋值以后该变量才会创建 等号(=)用来给变量赋值 =...
  • 函数的声明和变量定义

    千次阅读 2019-04-14 19:44:13
    函数的声明和变量定义声明与定义比较前向引用函数属性内部/内嵌函数函数应用:打印图形和数学计算变量作用域全局变量与局部变量局部变量全局变量globa语句可变类型的全局变量 声明与定义比较 ​ 某些编程语言...
  • Java中类变量(静态变量)和实例变量区别

    千次阅读 多人点赞 2018-04-14 16:01:34
    成员变量:把内、方法体外定义变量称为成员变量。Java的成员变量分为两种:一是没有static修饰的,这些成员变量是对象的成员,称为实例变量。 二是有static修饰的,称为变量(静态变量)。变量和实例...
  • MySQL中变量定义变量的赋值使用

    千次阅读 2018-03-23 09:44:28
    说明:现在市面上定义变量的教程和书籍基本都放在存储过程上说明,但是存储过程上变量只能作用于begin...end块,而普通的变量定义和使用都说的比较少,针对此类问题只能官方文档才能找到讲解。前言MySQL存储...
  • 我的上一篇博客 深入理解Java为什么内部可以访问外部的成员 , 通过使用javap工具反编译内部的字节码, 我们知道了为什么内部类中可以访问外部的成员, 其实是编译器编译内部的class文件时,偷偷...
  • java成员变量类变量、局部变量

    千次阅读 2018-02-25 20:03:12
    成员变量定义在类中,方法体之外。变量在创建对象时实例化。成员变量的方法、构造方法以及特定类的语句块访问。public class ClassName{ int a; public void printNumber(){ // 其他代码 } }类变量...
  • Java实例变量类变量

    万次阅读 多人点赞 2017-09-04 09:02:02
    形参:方法签名中定义的局部变量,由方法调用者负责为其赋值,随方法的结束而消亡。 方法内的局部变量方法内定义的局部变量,必须方法内对其进行显示初始化。这种类型的局部变量从初始化完成后开始生效,随...
  • 另外一点,可以不同的c文件声明同名的全局变量,前提是其中只能有一个c文件对此变量赋值,此时链接不会出错。 extern和static不能同时修饰同一变量。 链接规范,每个c/c++的定义都有链接规范(linkage)的...
  • C语言中变量和函数的声明与定义

    千次阅读 2016-11-17 20:39:02
    一、变量 变量前,先解释一下声明和定义...局部变量通常只定义不声明,而全局变量源文件中定义头文件声明。 局部变量 一个函数的内部定义变量是内部变量,它只本函数范围内有效。 自动变量auto
  • mysql定义变量

    千次阅读 2018-01-14 22:37:24
    MySQL存储过程定义变量有两种方式: 1.使用set或select直接赋值,变量名以 @ 开头. 例如:set @var=1; 可以一个会话的任何地方声明,作用域是整个会话,称为用户变量。 2.以 DECLARE 关键字声明的变量,...
  • 类中静态变量

    千次阅读 2018-12-23 14:30:36
    头文件声名的静态变量,不管是哪种都只是作为声名,而不是定义,比如说有一个叫Student,另外一个A里面声名了一个静态的Student成员,static Student student,那么这个student还不能用,因为他只是声名...
  • Java——类变量和实例变量的区别

    万次阅读 多人点赞 2019-04-29 15:47:01
    成员变量:把内、方法体外定义变量称为成员变量。 Java的成员变量分为两种: 一是没有static修饰的,这些成员变量是对象的成员,称为实例变量。 二是有static修饰的,称为变量(静态变量)。 静态...
  • 全局变量可不可以定义在多个.c文件包含的头文件? 链接规范,每个C/C++的定义都有名为链接规范(linkage)的属性。外部链接(external linkage)的定义被定义处以外的翻译单元看见并引用。内部链接...
  • UiBot的变量是动态类型的,无需再定义的时候声明变量的类型,即变量的值和类型都可以运行过程动态改变。这也符合一般脚本语言如Python、Lua、JavaScript的习惯。 定义变量名的方式是: Dim 变量名 再定义变量...
  • 转自: https://blog.csdn.net/basstal/article/details/52275191全局变量global定义在头文件,因为所有定义预设为外部链接,所以头文件.c文件包含以后,等于有两个或更多同等定义的global存在于不同的翻译...
  • 1、前言 相信同学们一定懵逼过,那是,不懵逼就不正常了,现在由我为了大家轻松的氛围... b、局部变量函数内、class的方法(构造、方法、静态方法、实例方法)内(变量未加self修饰),这就是局部变量 ...
  • 静态内部和内部的关系 只有内部才能声明为静态,即...如果一个内部不是被定义成静态内部,那么在定义成员变量或者成员方法的时候,是不能够被定义成静态的; 总结: 是否能拥有静态成员:静态内部.
  • VC如何定义全局变量

    千次阅读 2012-04-10 22:01:43
    问:VC如何定义全局变量 答:  放在任意文件里   其他文件里用 extern 声明   或者App类中声明一个公有成员   程序其它类中可以用   AfxGetApp() 得到一个App对象指针,将它转化成你的App...
  • 一.的基本定义语法,使用关键字class去定义一个,语法格式如下:访问控制符 class 类名{  成员变量声明  构造器声明  成员方法声明 ...花括号内为的主体,一般包括3个部分,成员变量...
  •  java,将一个类定义在另一个类里面或者是方法里面,这样的类被称为是内部类内部类。大概可以分为四类类:成员内部类、局部内部类、匿名内部类和静态内部类。  这四种类具体的区别可参考java内部类详解 二,...
  • 怎样定义指针变量

    千次阅读 2019-05-09 20:32:50
    存放地址的变量称为指针变量,它用来指向另一个对象(如变量,数组,函数等) 定义指针变量的一般形式为:类型名 *指针变量 如:int *pointer_1,*pointer_2; 其中,int为定义指针式必须指定的“基类型”,指针...
  • makefile中变量定义

    千次阅读 2008-07-17 16:30:00
    第五章:Makefile变量来源: ChinaUnix博客 日期: 2006.07.21 12:56 (共有0条评论) 我要评论 第五章:Makefile变量1 使用变量在...Makefile的目标、依赖、命令引用一个变量的地方,变量它的值所取代
  • 函数内部的变量名如果第一次出现,即视为定义一个局部变量,不管全局域有没有用到该变量名,函数使用的将是局部变量,局部变量只能作用域内使用,也就是函数内部使用 二:全局变量 模块使用,其函数...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 664,466
精华内容 265,786
关键字:

定义在类中的变量被称为