对象到底是啥
ps:对象就是一种特殊的数据结构,类是一个模板,对象是用类new出来的,有了类就可以创建出对象。构造器的使用是为了方便给对象属性赋值
ps:变量存在栈里,变量指向对象,对象存在堆里,对象指向类,类存在方法区,将方法区中的方法调到栈中执行
ps:万物皆对象,谁的数据谁存储
类的基本语法
构造器
构造器:以public开头,是一种特殊方法,不能写返回函数,名称必须是类名,就是构造器
重载(复习):方法名称一样,参数列表不一样的叫做重载
构造器的特点
构造器的特点:创建类对象时,对象会立即自动调用构造器
构造器的常见应用场景
public class Student { String name; int age; char sex; //构造器:是一种特殊方法,不能写返回函数,名称必须是类名,就是构造器 public Student(String n,int a,char s){ name = n; age = a; sex = s; } } //使用构造器与不使用构造器初始化定义的区别 Student s1 = new Student(); s1.name = "萧炎"; s1.age = 18; s1.sex = '男'; System.out.println(s1.name); System.out.println(s1.age); System.out.println(s1.sex); Student s2 = new Student("小龙女",18,'女'); System.out.println(s2.name); System.out.println(s2.age); System.out.println(s2.sex);类的注意事项
this关键字
哪个对象调用这个方法,this就拿到哪个对象
public class Student { String name; public void print(){ //this是一个变量,用在方法中,用于拿到当前对象 //哪个对象调用这个方法,this就拿到哪个对象 System.out.println(this); System.out.println(this.name); } } public class Test { //认识this关键字,搞清楚this的使用场景 public static void main(String[] args) { Student s1 = new Student(); s1.name = "播妞"; s1.print(); System.out.println(s1); Student s2 = new Student(); s2.print(); System.out.println(s2); } }this关键字的应用场景
eg1:
ps:this是一个变量,用在方法中,用于拿到当前对象
eg2:
以上两张图片例子的执行流程:第一张图片先执行类,第二张图片左边创建一个对象,然后立马执行第二张图片右边的构造器给对象赋值,最后执行第二张图片左边最后三行代码打印