0.常量用final修饰,并且要全部大写,单词间由下划线连接;
1.string类型的默认值是null;
2.int类型的默认值是0;
3.char类型的默认值是‘\u0000’;
4.boolean类型的默认值为false;
方法与重载
5.传参数的时候,基本数据类型传的是值,引用数据类型传的是指针(地址)
6.基本数据类型:加" . "不会出方法的数据类型,例如:char int double 等;
7.引用数据类型:“ . ”的出方法的,例如:数组.length,自定义的class ,接口等;
8.for()遍历数组时,可以写为:for(数据类型 标识符:数组名) eg:for(Student stu : stus);
9.this关键字:
用法1: 带参构造方法中,this指代当前的类:
this.name=name;
this.age=age;
从而与传过来的参数区分开;
用法2:this 关键字可调用类里面的方法
this.showInfo();
用法3:this关键字还可调用构造方法
public student(int age ,string name){xxxxxx}
现在要新增一个构造方法,加入int score 进去,可以调用之前的构造方法以减少代码量
public student(int age,string name ,int score){
this(age,score);
this.score=score;
}
注:用法3的写法中,this()的调用一定要在此构造方法第一句,否则报错。
10.构造方法没有返回类型,即:写构造方法时,不加void int string之类的返回类型;
11.当自定义带参的构造方法之后,原构造方法(系统自带的)失效,如要使用,应自行重新声明
1.string类型的默认值是null;
2.int类型的默认值是0;
3.char类型的默认值是‘\u0000’;
4.boolean类型的默认值为false;
方法与重载
5.传参数的时候,基本数据类型传的是值,引用数据类型传的是指针(地址)
6.基本数据类型:加" . "不会出方法的数据类型,例如:char int double 等;
7.引用数据类型:“ . ”的出方法的,例如:数组.length,自定义的class ,接口等;
8.for()遍历数组时,可以写为:for(数据类型 标识符:数组名) eg:for(Student stu : stus);
9.this关键字:
用法1: 带参构造方法中,this指代当前的类:
this.name=name;
this.age=age;
从而与传过来的参数区分开;
用法2:this 关键字可调用类里面的方法
this.showInfo();
用法3:this关键字还可调用构造方法
public student(int age ,string name){xxxxxx}
现在要新增一个构造方法,加入int score 进去,可以调用之前的构造方法以减少代码量
public student(int age,string name ,int score){
this(age,score);
this.score=score;
}
注:用法3的写法中,this()的调用一定要在此构造方法第一句,否则报错。
10.构造方法没有返回类型,即:写构造方法时,不加void int string之类的返回类型;
11.当自定义带参的构造方法之后,原构造方法(系统自带的)失效,如要使用,应自行重新声明
#粤嵌星计划#
strlen 和 sizeof 的区别:
sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。
它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。
由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所占的空间,返回值跟对象、结构、数组所存储的内容没有关系。
strlen(...)是函数,要在运行时才能计算。参数必须是字符型指针(char*)。当数组名作为参数传入时,实际上数组就退化成指针了。
它的功能是:返回字符串的长度。该字符串可能是自己定义的,也可能是内存中随机的,该函数实际完成的功能是从代表该字符串的第一个地址开始遍历,直到遇到结束符/0。返回的长度大小不包括/0。
strlen 和 sizeof 的区别:
sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。
它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。
由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所占的空间,返回值跟对象、结构、数组所存储的内容没有关系。
strlen(...)是函数,要在运行时才能计算。参数必须是字符型指针(char*)。当数组名作为参数传入时,实际上数组就退化成指针了。
它的功能是:返回字符串的长度。该字符串可能是自己定义的,也可能是内存中随机的,该函数实际完成的功能是从代表该字符串的第一个地址开始遍历,直到遇到结束符/0。返回的长度大小不包括/0。
#粤嵌星计划,粤嵌我来了#粤嵌星计划
今日知识分享:
shell脚本的变量
1, 命名方式
Shell的变量命名方式与C语言类似:
只能由数字,字母,下划线组成,不能是数字开头
2, shell脚本变量声明
shell脚本的变量不需要声明数据类型,数据类型默认都是字符串类型
C语言: int i; / char ch; / float f;
Shell : str
3,shell变量的赋值时,等号两边不能有空格
C语言: int age = 20; // char *p = “helloworld”;
Shell : str=hello
4,变量的引用,需要在变量名前面加上 $
Shell:
Str=hello
echo $Str
5,变量的种类
C语言: 局部变量,静态变量,全局变量
Shell :
1) 普通用户自定义的变量 ==》4中的Str
2) 系统环境变量 ==》例如 PATH
==》可以通过env查看系统环境变量
修改环境变量 PATH ==》 把一个路径添加进去 /home/gec
export PATH=$PATH:/home/gec 临时修改(关闭终端,这修改就没有用)
==》想要永久修改,就把这个命令写入终端启动脚本 ~/.bashrc 最后一行
3) 命令行变量 $#$* 类似于C语言的argc与argv
C语言: int main(int argc, char *argv[]);
./hello aaabbb
argc = 3 , argv[1] = aaa; argv[2] = bbb;
shell :
./hello.sh aaaa bbbb
$# :命令行参数个数 2 个 (不包含 ./hello.sh)
$*: 代表所有参数 aaaa bbbb
$n : 第n个参数, $1 代表第一个参数aaaa , $2代表 bbbb
$? : 最后一个shell命令的返回值 shell命令执行:成功返回0,失败:非0
$$ : 代表当前进程的PID
今日知识分享:
shell脚本的变量
1, 命名方式
Shell的变量命名方式与C语言类似:
只能由数字,字母,下划线组成,不能是数字开头
2, shell脚本变量声明
shell脚本的变量不需要声明数据类型,数据类型默认都是字符串类型
C语言: int i; / char ch; / float f;
Shell : str
3,shell变量的赋值时,等号两边不能有空格
C语言: int age = 20; // char *p = “helloworld”;
Shell : str=hello
4,变量的引用,需要在变量名前面加上 $
Shell:
Str=hello
echo $Str
5,变量的种类
C语言: 局部变量,静态变量,全局变量
Shell :
1) 普通用户自定义的变量 ==》4中的Str
2) 系统环境变量 ==》例如 PATH
==》可以通过env查看系统环境变量
修改环境变量 PATH ==》 把一个路径添加进去 /home/gec
export PATH=$PATH:/home/gec 临时修改(关闭终端,这修改就没有用)
==》想要永久修改,就把这个命令写入终端启动脚本 ~/.bashrc 最后一行
3) 命令行变量 $#$* 类似于C语言的argc与argv
C语言: int main(int argc, char *argv[]);
./hello aaabbb
argc = 3 , argv[1] = aaa; argv[2] = bbb;
shell :
./hello.sh aaaa bbbb
$# :命令行参数个数 2 个 (不包含 ./hello.sh)
$*: 代表所有参数 aaaa bbbb
$n : 第n个参数, $1 代表第一个参数aaaa , $2代表 bbbb
$? : 最后一个shell命令的返回值 shell命令执行:成功返回0,失败:非0
$$ : 代表当前进程的PID
✋热门推荐