定义java对象
- 对象的声明:类名 对象名;
- 对象的创建:对象=new 类名();//new为对象分配内存空间。
即:合并1 2为 类名 对象名 =new 类名();具体的可以看下面介绍中的实例。
例:Computer c=new Computer();其中c为实体类Computer 的对象。
方法重载
重载:java中为了方便方法命名,出现的一种
(1)方法名相同
(2)参数列表不同(个数不同;个数相同,参数对应类型不同)
(3)不考虑参数名
//Computer实体类
public class Computer{
public int add(int a,int b){//方法1
return a+b;
}
public double add(double a,int b){//方法2
return a+b;
}
public int add(int a,int b,int c){//方法3
return a+b+c;
}
}
//主类
public class test{
public static void main(String[] args) {
Computer c=new Computer();//创建实体类Computer的对象
System.out.println(c.add(1,2));//调用方法1
System.out.println(c.add(1.2,1));//调用方法2
System.out.println(c.add(1,2,3));//调用方法=3
}
}
通过上面这个实例,我们可以观察到类对象到底调用哪个方法:取决于(1)传输参数的个数(2)数据类型
java构造方法
- 为什么会有构造方法?便于成员变量的赋值。
- 构造方法的创建:类似下面的构造
访问控制符 类名([参数列表]){
}
注意:
(1)构造方法没有返回值
(2)构造方法不能使用static和final修饰
- 类中默认会有无参数的构造方法,但是显式自定义构造方法后,则会类中默认的构造参数则会被隐藏掉。(所以当出现需要使用无参的构造参数,又恰巧有参构造方法在类中,需要手动将无参构造参数编写出来。)
//Computer实体类
public class Computer{
int number;
int price;
//无参构造参数
public Computer() {
}
//有参构造参数
public Computer(int number,int price) {
this.number=number;
this.price=price;
}
public void print() {
System.out.println("电脑总数量:"+number+",电脑单价:"+price);
}
}
//主类
public class test{
public static void main(String[] args) {
Computer c=new Computer();//创建实体类Computer的对象
c.print();
c=new Computer(2,2400);
c.print();
}
}
结果:
电脑总数量:0,电脑单价:0
电脑总数量:2,电脑单价:2400
由上面的例子,第一次对Computer对象使用无参构造参数,可以看到在使用默认构造参数时输出的是默认值,再次赋值时调用有参构造参数,输出的值就是对应存入内存的数值。
4.一个类中可以构造多个构造方法,构造方法之间也可以通过this([实参列表])互相调用,但是置于有效代码第一行。
//这部分代码只是解释如何去使用,正常情况下可以分开构造。
public Computer(int number,int price) {
this.number=number;
this.price=price;
}
//当Computer类中多了一些变量,比如说地点,再次构造含有地点的构造方法时,就可以在此次构造方法中调用已经为数量和价格赋值的构造参数。
public Computer(int number,int price,int palce) {
this(number,price);
this.place=place;
}