一、数据类型
在Java中数据类型分为两种,一是基本数据类型,二是引用数据类型。
基本数据类型就是我们常用的int,short,long,double,float,boolean,byte,char等。 引用数据类型主要包含类、接口和数组等,注意String为引用数据类型。
它们的区别在于,基本数据类型存放的是实际数据,而引用数据类型的变量保存的是内存地址。
int a=1;
int b=a;//此处a和b有相同的值
a=2;//给a赋予新的值,但是不影响b
public class Test {
public void test1(Student c1) {
c1.age=c1.age+1;//c1根据内存地址访问修改age
}
public static void main(String[] args) {
Student stu = new Student();//将创建的心对象赋值给Stu,这里是将内存地址赋值给stu
stu.age = 18;//调用赋值
Test test = new Test();//创建新对象
test.test1(stu);//将stu的内存地址传递给c1,并调用test1方法
System.out.println(stu.age);//输出19
}
}
class Student { //创建Student类引用数据类型
int age;
}
二、成员变量和局部变量
成员变量是在类中定义的变量,可以在整个类中调用,Java会给成员变量一个初始值。
局部变量是在方法中定义的变量,只能在方法中使用,Java不会给局部变量赋予初始值。
区别
(1)局部变量声明赋值以后在使用,成员变量可以不赋值,值就是默认值。例如String类型的默认值是null,
int类型的默认值是0
(2)局部变量只能在当前的方法中使用,在其他方法中不能使用。成员变量可以在整个类中使用。
(3)在一个方法中局部变量和成员变量重名了,方法中优先使用局部变量,如果想在此方法中使用全局变量,需要使用this关键字。
三、方法重载
在同一个类中, 方法名相同,参数不同(参数的个数不同 参数的类型不同),就叫做方法重载。
什么需要方法重载
同一个方法名,传递不同的参数,解决不同的问题。简化代码量。
public void Student() {
}
public String Student(String name, int age, String address) {//拥有不同的参数,但是与返回值无关
this.name = name;
this.address = address;
this.age = age;
}
四、构造方法
构造方法的规则:
(1)如果一个类中没有构造方法,系统会提供一个默认的无参构造方法。
(2)如果类中有构造方法,则不会提供默认的无参构造方法。
public class Counter {
public Counter(int a, int b) {
int sum = a + b;
System.out.println("两数之和为"+sum);
}
public Counter(double a, double b, double c) {
double sum = a + b + c;
System.out.println("数之和为"+sum);
}
public Counter() {
}