类跟对象的关系
-
类是一种抽象的数据类型,他是对某一类事物的抽象描述/定义,但是并不代表某一个具体的事物
- 动物,职务,手机,电脑。。。
- person类,pet类,car类等,这些类都是用来描述/定义某一类具体的事物应该具备的特点和行为
-
对于抽象的概念的具体实例
-
张三就是人的一个具体实例,张三家里的旺财就是狗的一个具体实例。
-
能够体现书特点,展现出功能的具体实例,不是一个抽象的概念。
-
-
我们可以将这些思想转换为代码实现
创建与初始化对象
-
使用new关键字创建对象
-
使用new关键字创建的时候,除了分配内存空间以外,还会给创建好的对象进行默认的初始化以及对类中构造器的调用
-
类中的构造器也称构造方法,是在进行创作对象的时候必须要调用的,并且构造器有一下两个特点
- 必须和类的名字相同
- 必须没有返回值,也不能写void
-
构造器必须要掌握
package oop.Dome02; public class Person { //一个类即使什么也不写,他也会存在一个方法 //显示的定义构造器 String name; //1.使用new关键字,本质是在调用构造器,必须要有构造器 //2.用来初始化值 public Person(){ this.name="qj"; } //有参构造一旦定义二有参构造,无参就必须显示定义 public Person (String name){ this.name= name;} //alt+insert }
package oop.Dome02; public class App { public static void main(String[] args) { //实例化了一个 Person person = new Person("kuangshen"); System.out.println(person.name);//null } } /* 构造器: 1.和类名相同 2.没有返回值 作用 1.new本质在调用构造方法 2.初始化对象的值 注意点 1.定义有参构造后,如果想使用无参构造,显示的定义一个无参构造 */
以类的方式组织代码,以对象的组织封装数据
package oop;
//学生类
public class Students {
//属性:字段
String name;//null
int age;//0
//方法
public void study(){
System.out.println(this.name+"在学习");
}
}
//Person -->,身高,体重,年龄
package oop;
//一个项目应该只存在一个main方法
public class Application {
public static void main(String[] args) {
//类是抽象的,需要实例化
//类实例化化后返回一个自己的对象
//对象students(小明,小红)对象就是一个Students类的一个是实例对象
Students xiaoming = new Students();
Students xiaohong = new Students();
xiaoming.name ="小明";
xiaoming.age = 3 ;
System.out.println(xiaoming.name);
System.out.println(xiaoming.age);
}
}