類與對象的關系
類是一種抽象的數據類型,它是對某一類事物整體描述/定義,但是並不能代表某一個具體的事物
動物、植物、手機、電腦。。
Person類、Pet類、Car類等
對象是抽象概念的具體實例
張三是人的應該具體實例
能夠體現出特點,展現出功能的是具體的實例,而不是一個抽象的概念
創建與初始化對象
使用new關鍵字創建對象
使用new關鍵字創建的時候,除了分配內存空間之外,還會給創建好的對象進行默認的初始化以及對類中構造器的調用
//學生類
public class Student {
//屬性:字段
String name;//null
int age;//0
//方法
public void study(){
System.out.println(this.name+"在學習");//this表示當前類的屬性
}
}
//一個項目應該只存在一個main方法
public class Application {
public static void main(String[] args) {
//類:抽象的,實例化
//類實例化后會返回自己的一個對象
//student對象就是Student類的具體實例!
Student student = new Student();
Student xiaohong = new Student();
Student xiaoming = new Student();
xiaoming.name="xiaoming";
xiaoming.age=2;
xiaohong.age=3;
System.out.println(xiaoming.name);
System.out.println(xiaohong.age);
}
}
構造器
類中的構造器也稱為構造方法,是在進行創建對象的時候必須要調用的。並且構造器有以下兩個特點:
1.必須和類的名字相同
2.必須沒有返回類型,也不能寫void
作用:
1、new本質在調用構造方法
2.初始化對象的值
注意點:
1、定義有參構造之后,如果想使用無參構造,必須要顯示定義一個無參的構造
2、Alt+insert:快捷方式創建有參無參構造器
3、this. (代表當前類)=(參數傳進來的值)
public class Person {
//一個類即使什么都不寫,它也會存在一個方法
//顯示的定義構造器
String name;
int age;
//實例化初始值
//1.使用new關鍵字,本質是在調用構造器
//2.用來初始化值
public Person(){
};
//有參構造:一旦定義了有參構造,無參就必須顯示定義
public Person(String name,int age) {
this.name = name;
this.age=age;
}//alt+insert:快捷方式創建有參無參構造器
}
public class Application {
public static void main(String[] args) {
//new實例化了一個對象
Person person = new Person("szc",12);//根據參數來調用方法
System.out.println(person.name);
System.out.println(person.age);
}
}
總結
類與對象
1、類是一個模板:抽象,對象是一個具體的實例
2、方法
定義、調用
3、對象的引用
引用類型:基本類型:int、short、long、byte、Boolean、char、double、float
對象是通過引用來操作的:棧--->堆
4、屬性:字段Field 成員變量
默認初始化:數字:0 0.0
char:u0000
boolean:false
引用:null
修飾符 屬性類型 屬性名=屬性值!
5、對象的創建和使用
必須使用new關鍵字創造對象,構造器 Person szc =new Person();
對象的屬性 szc.name
對象的方法szc.sleep()
6、類
靜態的屬性 屬性
動態的行為 方法