基本数据类型
我们经常会在程序中出现一些数字,比如1,2,1.1099等等,这些是在生活中常见的东西,按照Java的一切都是对象来说呢,我们要使用这些数字时需要这样:
数字类型 数字名称=new 数字类型(1);
以后想使用数字1时,就调用“数字名称”。
当然,这样是非常麻烦的,用个数字还得建个对象,写程序要累死了。
因此Java中出现了基本数据类型这一概念。
什么是基本数据类型呢?顾名思义,是最基本的,最单纯不可分解的代表数据的一种类型。
基本数据类型可以直接在程序中出现,而不需要建对象才能使用。
比如程序中可以直接出现数字"1"。
基本数据类型有哪些呢?
有整数型,浮点型,字符型,布尔型
整数型:短整型(short),整形(int),长整形(long)。代表不同的整数。
浮点型:浮点型(float),双精度型(double)
字符型:就是代表一个个的字符,符号(char)
布尔型:用来表示是,否。(true),(false)
有些人会问,为什么String字符串不是基本数据类型,很简单,String可以分解为多个char,它不基本!
包装类型
因为java是面向对象的,因此所有的基本数据类型都有一个对应的对象来表示:
short->Short
int->Int
long->Long
float->Float
double->Double
char->Char
boolean->Boolean
变量
在数学中有这样一种表达式:y=2x+1
我们把x称为变量,y称为结果,y的值随着x的值变化而变化。
因此在程序中,也有了一种变量的概念,用来表示会发生变化的数字。
写法如下:
int x;
int表示x的基本数据类型是整数。x为变量。
因此这个上面那个公式在程序中可以这样写。
int x;
int y;
y=2x+1;
这里的等号是一种运算符号,表示赋值的意思。就是把2x+1的运算结果赋给y。
请问引用是变量吗?
ApplegreenApple=new Apple();
请问greenApple是变量吗?是,引用也是变量,因为greenApple的值是可以改变的。
常量
相对于变量,就出现了常量。常量的值不可以改变。比如1就是常量,1永远都代表1,不会变化的。
在程序中也可以为常量起名字,方法是:
final inti=1;
final是java的一个关键字,用final修饰代表i的值不可以再改变。
运算符号
在这里我不想讲所有的运算符号,那些可以自己百度,谷歌搜索。
说明一下,i++和++i的区别吧:
y=i++:加号在后面,表示i的值赋给y,然后i自加1。
y=++i;加号在前面,表示i先自加1,然后在把新的i赋值给y。
很简单的,加号的位置决定自加1是在前面还是在后面。
关于Apple greenApple=new Apple()的解释:
1.有人可能会问:Apple代表引用greenApple的类型,new Apple()中的Apple也表示赋值给greenApple的对象是Apple类型,这不是很重复吗?这里涉及到后面要学的多态概念,因为有时候我们实例化greenApple也可以是这样的:
ApplegreenApple=new GreenApple();
所以才出现了两次确认对象类型的情况。
2.Apple greenApple;表示创建了一个引用,但是不能使用,你使用会产生编译错误。引用放在栈中。
new Apple();创建一个对象,表示调用Apple类的空构造函数,所以括号中没有参数,假如传入参数,会调用指定的构造函数。这行代码会在堆中创建一个区域,用于存放创建对象后对象的属性,并且会产生一个地址值,也就是对象在堆中的位置。
greenApple=new Apple();创建的地址值会传给greenApple存放。
因此,我们说:引用放在栈中,默认为null,用于存放地址值。对象放在堆中,当然对象的属性也是在堆中。
方法
方法在java中这样表示:
voidf(int x){
//方法内容
}
方法的作用是改变对象的状态,并把处理后的结果返回的一种东东。
因此,方法需要以下几个东西:
- 方法处理结果的类型
- 方法的名字
- 方法传入的参数
- 方法的内容
那么,假如没有返回类型怎么办,放心,java想到了,用void来撑场面吧。
因此,方法就是这样写的啦:
返回类型 方法名字(参数1类型 参数1名字){
方法内容
}