Java中类和对象

  1. 构造方法
    构造方法:一种特殊方法, 使用关键字new实例化新对象时会被自动调用, 用于完成初始化操作
    new 执行过程
    ●为对象分配内存空间
    ●调用对象的构造方法
    语法规则
    1.方法名称必须与类名称相同
    2.构造方法没有返回值类型声明
    3.每一个类中一定至少存在一个构造方法(没有明确定义,则系统自动生成一个无参构造)
    注意事项
    ●如果类中没有提供任何的构造函数,那么编译器会默认生成一个不带有参数的构造函数
    ●若类中定义了构造方法,则默认的无参构造将不再生成.
    ●构造方法支持重载. 规则和普通方法的重载一致
class Person {
    private String name;//实例成员变量
    private int age;
    private String sex;

    //默认构造函数 构造对象
    public Person() {
        this.name = "xiaohua";
        this.age = 10;
        this.sex = "女";
    }

    public Person(String name, int age, String sex) {
        this.name = name;
        this.age = age;
        this.sex = sex;
    }

    public void show() {
        System.out.println("name: " + name + " age: " + age + " sex: " + sex);
    }
}
    public class TestDemo {
    public static void main(String[] args) {
        Person person = new Person();
        person.show();
    }
}
  1. this关键字
    this表示当前对象引用(注意不是当前对象). 可以借助 this 来访问对象的字段和方法。
  2. 代码块
    使用 { } 定义的一段代码.
    根据代码块定义的位置以及关键字,又可分为以下四种:
    ●普通代码块:定义在方法中的代码块。
    ●构造代码块:定义在类中的代码块(不加修饰符)。也叫:实例代码块。构造代码块一般用于初始化实例成员变量。
    ●静态代码块:使用static定义的代码块。一般用于初始化静态成员属性。
    ●同步代码块
    注意事项
    静态代码块不管生成多少个对象,其只会执行一次,且是最先执行的。
    执行的先后顺序:
    静态代码块执行完毕后, 实例代码块(构造块)执行,再然后是构造函数执行。
    4. 内容重点总结

(1)一个类可以产生无数的对象,类就是模板,对象就是具体的实例。
(2)类中定义的属性,大概分为几类:类属性,对象属性。其中被static所修饰的数据属性称为类属性, static修饰的方法称为类方法,特点是不依赖于对象,我们只需要通过类名就可以调用其属性或者方法。
(3)静态代码块优先实例代码块执行,实例代码块优先构造函数执行。
(4)this关键字代表的是当前对象的引用。并不是当前对象