类与对象的关系以及创建
类是一种抽象的数据类型,它是某一类事物整体描述/定义,但并不能代表某一个具体的事物。
#动物、植物、手机、电脑....
#Person类、Pet类、Car类等,这些都是用来描述/定义某一具体的事物应该具备的特点和行为
对象是抽象概念的具体实例
#张三就是人的一个具体实例,张三家里的旺财就是狗的一个具体实例。
#能够体现出特点,展现出功能的是具体实例,而不是一个抽象的概念。
1 package com.kuang.oop.demo02; 2 3 //一个项目应该只存在一个main方法 4 public class Application { 5 public static void main(String[] args){ 6 //类:抽象的,实例化 7 //类实例化后返回一个自己的对象! 8 //student对象就是一个Student类的具体实例! 9 10 Student xiaoming=new Student(); 11 Student xiaohong=new Student(); 12 13 xiaoming.name="小明"; 14 xiaoming.age=13; 15 16 System.out.println(xiaoming.name); 17 System.out.println(xiaoming.age); 18 19 xiaohong.name="小红"; 20 xiaohong.age=14; 21 22 System.out.println(xiaohong.name); 23 System.out.println(xiaohong.age); 24 } 25 }
创建与初始化对象
#使用new关键字创建对象
#类中的构造器也称为构造方法,是在进行创建对象的时候必须要调用的。并且构造器有一下两个特点:
1.必须和类的名字相同
2.必须没有返回类型,也不能写void
public class Person { //一个类即使什么都不写,=它也会存在一个方法 //显示的定义构造器 String name; int age; //实例化初始值 //1.使用new关键字,本质是在调用构造器 //2.用来初始化 public Person(){ } //有参构造:一旦定义了有参构造,无参构造必须显示定义 public Person(String name){ this.name=name; } public Person(String name,int age){ this.name=name; this.age=age; }
public static void main(String[] args){ //new 实例化了一个对象 Person person=new Person("kuang",20); System.out.println(person.name); System.out.println(person.age); }