什么是类:
类似于c语言中的结构体,但它是高配结构体
类中包含了数据,也包含了动作(方法)
类存在的意义也是对客观事物进行一个抽象的表示。
要想使用这个类(类是自定制类型),还需要把这个类型的变量给创建出来。这个变量就称为“对象(object)/实例(instance)”
Java程序中,一般推荐,一个.java文件中就放一个类,但是也不绝对
创建出对象之后,就可以给这个对象中的属性设置一定的值,
同时也可以去调用对象的方法(.)并且方法内部是可以访问和使用到对象的属性的。
public class Test{
public static void main(String[] args){
Person xiaohua=new Person();
xiaohua.name= "小花" ;
xiaohua.eat();
Person xiaoli=new Person();
xiaoli.name="小丽";
xiaoli.sleep();
}
}
Java中的基本类型分成两大类
1.基本类型 int long short byte……
2.引用类型: 数组 String 自己写的类
Java类中的属性如果没有初始化,也会有一个默认值
如果是引用类型,初始的默认值就是null
但是初始化过程过于的繁琐
public class Test{
public static void main(String[] args){
Person xiaohua=new Person();
xiaohua.name= "小花" ;
xiaohua.age=18;
xiaohua.sex="女";
xiaohua.isSingle=false;
xiaohua.eat();
Person xiaoli=new Person();
xiaoli.name="小丽";
xiaoli.age=18;
xiaoli.sex="女";
xiaoli.isSingle=false;
xiaoli.sleep();
}
}
类中存在一个特殊的方法,构造方法
1.构造方法的名字和类名完全相同
2.构造方法没有返回值
3.构造方法new对象的同时被自动调用到
构造方法中是可以传参数,和普通的方法没啥区别
this在Java中是一个关键字,在类的内部表示当前这个对象的引用
构造方法也能支持重载,重载的规则和普遍方法是一样的。
public class Test{
public static void main(String[] args){
Person xiaohua=new Person("小花");
xiaohua.eat();
Person xiaoli=new Person("小丽");
xiaoli.sleep();
}
}
public class Person {
//类的字段/属性/成员变量
public String name;
public String sex;
public int age;
public boolean isSingle;
public Person(String name){
this.name=name;
sex="女";
age=18;
isSingle=false;
}
//类的方法
public void eat(){
System.out.println(name + "吃饭");
}
public void sleep(){
System.out.println(name + "睡觉");
}
}
代码块功能和构造方法很类似,也是可以用来初始化
相比之下构造方法可以传参数,并且支持重载(可以有多个版本)
代码块中只能去做一些固定的初始化。