1、类与对象的关系
代码:Student类
package oop;
//学生类
public class Student {
//属性:字段
String name; //这里不赋值,因为赋值之后所有对象的name都会是同一个值
int age;
//方法
public void study(){
//this可代表当前类
System.out.println(this.name+"在学习");
}
}
代码:Application类,调用Student类中的属性
package oop;
//学生类
package oop;
//一个项目只存在一个main方法
public class Application {
public static void main(String[] args) {
//类:抽象的,需要实例化 new可以实例化
//类实例化之后会返回自己的对象
Student xiaoming = new Student(); //调用Student类,创建类对象
xiaoming.name = "小明";
System.out.println(xiaoming.name);
}
}
2、关于构造方法:一个类即使什么也不写,也会存在一个构造方法,比如创建一个Student类的时候,什么也不写,就可以new一个Student()类对象,原因可以在out文件夹,也就是输出的文件夹中找到对应的Student.class文件,打开会发现自动有Student()方法
3、构造器的作用:
使用new关键字时,本质是在调用构造器
用来初始化值
4、构造器的特点:
和类名相同
没有返回值
代码:无参构造器和有参构造器的定义和调用的区别
定义:
package oop;
public class Person {
String name;
//实例化初始值
//无参构造器
// public Person(){
// this.name = "lalala";
//
// }
//有参构造:一旦定义了有参构造。
public Person(String name){
this.name = name;
}
}
调用:
package oop;
//一个项目只存在一个main方法
public class Application {
public static void main(String[] args) {
//new 实例化了一个对象
//调用无参构造
// Person person = new Person();
// System.out.println(person.name);
//调用有参构造
Person person = new Person("lilili");
System.out.println(person.name);
}
}