类与对象
1.面向对象与面向过程
在这用煮泡面来进行说明。
1.1面向过程
拿锅→插电→放水→开电→煮沸→加调料→加面→搅拌→关电
注重的是过程
不同的事有不同的过程比较麻烦。
1.2面向对象
对象:人,泡面,锅。
过程:人用锅煮泡面。
通过对象直接交互完成,不用关心怎么煮泡面。
2.类的定义和使用
2.1类
类是用来对一个实体(对象)来进行描述的。
比如:水杯,看成一个类
属性:品牌,型号,产地,容量,颜色
功能:保温,不烫手
2.2类的定义和实例化
定义:Java中定义类的关键字class,类名首字母大写,方面名全小写。如class Glass
实例化对象:用类类型创建对象的过程,称为类的实例化,Java中用new关键字。如Glass glass = new Glass()
class Glass{//Glass类名
public String brand;//品牌
public String type;//型号
public String producer;//产地
public String capacity;//容量
public String colour;//颜色
public void heatpreservation(){//保温
System.out.println("可保温啦!");
}
public void nohothand(){//不烫手
System.out.println("不烫手哦!");
}
}
public class Main{
public static void main(String[] args){
Glass glass = new Glass();//通过new实例化对象
glass.brand = "xx牌";
System.out.println(glass.brand);
glass.type = "大杯";
System.out.println(glass.type);
glass.producer = "中国制造";
System.out.println(glass.producer);
glass.capacity = "800ml";
System.out.println(glass.capacity);
glass.colour = "蓝色";
System.out.println(glass.colour);
glass.heatpreservation();
glass.nohothand();
}
}
输出结果:
xx牌
大杯
中国制造
800ml
蓝色
可保温啦!
不烫手哦!
3.对象的构造及初始化
3.1构造方法
1.名字与类名相同,没有返回值。
2.一般用public修饰
3.在创建对象时编译器自动调用,并在对象的生命周期内只调用一次。
如:
class Glass{//Glass类名
public String brand;//品牌
public String type;//型号
//下面是带参数构造方法
public Glass(String brand,String type){
this.brand = brand;
this.type = type;
}
public void printGlass(){
System.out.println("brand:" + brand + " " + "type:" + type);
}
}
public class Main{
public static void main(String[] args){
Glass glass = new Glass("xx牌","大杯");//通过new实例化对象
glass.printGlass();
}
}
//运行结果
brand:xx牌 type:大杯
3.2初始化
3.2.1.就地初始
class Glass{//Glass类名
public String brand = "xx牌";//品牌,初始化
public String type = "大杯";//型号,初始化
public Glass(String brand,String type){
}
public Glass(){
}
public void printGlass(){
System.out.println("brand:" + brand + " " + "type:" + type);
}
}
public class Main{
public static void main(String[] args){
Glass glass1 = new Glass();
glass1.printGlass();
Glass glass2 = new Glass("xx牌","大杯");
glass2.printGlass();
}
}
//运行结果
brand:xx牌 type:大杯
brand:xx牌 type:大杯
3.2.2.默认初始化
class Glass{//Glass类名
public String brand;//品牌
public String type;//型号
//下面是带参数构造方法
public Glass(String brand,String type){
this.brand = brand;
this.type = type;
}
public Glass(){
}
public void printGlass(){
System.out.println("brand:" + brand + " " + "type:" + type);
}
}
public class Main{
public static void main(String[] args){
Glass glass1 = new Glass();
glass1.printGlass();
Glass glass2 = new Glass("xx牌","大杯");//通过new实例化对象
glass2.printGlass();
}
}
//运行结果
brand:null type:null
brand:xx牌 type:大杯
对象空间申请,对象中包含的成员已经设置好了初始化。
数据类型 | 默认值 |
---|---|
byte | 0 |
char | ‘\u0000’ |
short | 0 |
int | 0 |
long | 0L |
boolean | false |
float | 0.0f |
double | 0.0 |
reference | null |
String的初始化默认值是null。