面向对象04.05
类与对象的创建
-
类一种抽象的数据类型,它是对某一类事物整体的描述/定义,但是进不能代表某一个具体的事物。
-
对象是抽象概念的具体实例
-
package Demo01; import Demo01.Student; public class Application { public static void main(String[] args) { // 一个项目应该只存在一个main方法 Student xiaoming = new Student(); Student xiaohong = new Student(); // 类:抽象的,实例化 // 类实例化后会返回一个自己的对象 // student 对象就是Student类的具体实例 xiaoming.name = "小明"; xiaoming.age = 14; xiaoming.achievement = 90.0; System.out.println(xiaoming.name+" "+xiaoming.age+" "+xiaoming.achievement); xiaohong.name = "小红"; xiaohong.age = 15; xiaohong.achievement = 80.0; System.out.println(xiaohong.name+" "+xiaohong.age+" "+xiaohong.achievement); } } _____________________________________________________________ package Demo01; public class Student { // 学生类的属性 String name ; int age; double achievement; public void study() { System.out.println(this.name+"在学习"); } } ========================================== 小明 14 90.0 小红 15 80.0 Process finished with exit code 0
构造器详解
-
使用new关键字创建对象
-
使用new关键字创建对的时候,除了分配内存储存空间之外,还会给创建好的对象进行默认的初始化以及对类中构造体的调用
-
类中的构造器也称为构造方法,是在进行创建对象的时候必须要调用的。并且构造器有以下两个特点:
- 必须和类的名字相同
- 必须没有返回类型,也不能写void
-
构造器必须要掌握
-
package Demo02; public class Person { // 一个类即使什么都不写,它也会存在一个方法 String name; // 1.实例化初始值 // 2. 使用new关键词,本质上是在调用构造器 public Person(){ this.name = "小明"; } // 有参构造:一旦定义了有参构造,无参就必须显示定义 // 快捷键: Alt + insert public Person(String name) { this.name = name; } } --------------------------------------------------- package Demo02; public class Application { // 一个项目只有一个main方法 public static void main(String[] args) { Person person = new Person(); System.out.println(person.name); System.out.println("-------------"); Person person1 = new Person("小红"); System.out.println(person1.name); } } /** * 构造器: * 1. 和类名相同 * 2. 没有返回值 * 作用: * 1. new本质在调用构造方法 * 2.初始化对象的值 * 注意点: * 1. 定义有参构造之后,如果想使用无参构造,显示的定义一个无参构造 */ ========================================= 小明 ------------- 小红 Process finished with exit code 0