1 引用数据类型分类
类的类型分两种
1)Java提供好的类,如Scanner类,Random类等,这些已存在的类中包含了很多的方法与属性,可供开发者使用。(类的变量是属性)
2)开发者自己创建的类,按照类的定义标准,可以在类中包含多个方法与属性,来供开发者使用。
注意:
类的变量就是属性
类中只能定义变量和方法
2自定义数据类型
在Java中,将现实生活中的事物抽象成了代码。可以使用自定义的数据类型(类)来描述(映射)现实生活中的事物。
类,是引用数据类型,自定义类也是一种数据类型。
自定义类型并非Java预先提供好的类型,而是开发者自己定义的一种引用数据类型,用来描述一个事物。
3 类的定义
java代码映射成现实事物的过程就是定义类的过程。
类的定义格式:
public class 类名{
数据类型 属性名称1;
数据类型 属性名称2;
…
}
Tips:加了public,文件名和类名必须相同
4类的使用
使用格式:
1)导包:将所有的类放到同一个文件夹下,可以避免导包。(所以之前学习的Scanner类和Random类就需要导包)
2)创建对象:数据类型 变量名 = new 数据类型();
3)调用方法:目前定义的自定义类不涉及方法,只是属性(自定义类中的方法部分在面向对象部分讲解)
4)访问属性:变量名.属性 (这是当前的方式,后期会采取调用方法的方式替代掉直接访问的方式来完成对属性的访问。)
例:通过类的定义格式,来进行手机类的描述:
Phone.java文件:
class Phone
{
//属性
String color;
int size;
String brand;
}
TestPhone.java文件:
class TestPhone
{
public static void main(String[] args)
{
//创建Phone对象
Phone p=new Phone(); //调用:对象名.属性,并赋值
p.color="红色";
p.size=5;
p.brand="iphone8"; System.out.println(p.color);
System.out.println(p.size);
System.out.println(p.brand);
}
}
直接编译TestPhone就行,Phone会同时自动编译。(Java提供的类全是内置好了的,所以不需要编译。)
结果:
如果再建一个对象,就会又有了自己的属性,
如:Phone p2=new Phone();
那么,类可以理解为一个模板。
5内存图:
6相关说明
类的属性,也叫成员变量(就是全局变量,但在java中不叫全局变量),方法叫成员方法。
(自定义的)方法中的变量,是局部变量,是属于方法的,不是类的变量。
对象调用方法,方法都是进栈。