类
1、是同类型东西的概念,是对现实生活中事物的描述,映射到Java中描述就是class定义的类。类是对象的模版、图纸,是对象的数据结构定义。简单说就是“名词”。
2、其实定义类,就是在描述事物,就是在定义属性(变量)和方法(函数)。
3、类中可以声明:
属性、方法、构造器;
属性(变量)分为:实例变量、局部变量;
实例变量:用于声明对象的结构,在创建对象时候分配内存,每个对象有一份!实例变量(对象属性)在堆中分配,并作用于整个类中,实例变量有默认值,不初始化也能参与运算;
局部变量在栈中分配,作用于方法或语句中,必须初始化,有值才能运算。
4、类与类之间的关系:
A.关联:一个类作为另一个类的成员变量:
需要另一个类来共同完成。
class A{
public B b
}
classB{}
B.继承:
class B extends A{}
class A{}
C.依赖:个别方法和另一个类相关。
class A {
public void f(B b)}//参数里有B
public B g(){}//返回值里有B
}
class B {}
package demo;
public class Demo{
/*类(.class)加载到方法区局部变量p1p2在栈中分配对象在堆中创建,对象按照属性分配空间*/
public static void main(String[] args){
Point p1;//引用变量,是对象的名字
p1 = new Point();//对象 p1(3,4)
p1.x = 3;//.叫取成员运算,可以理解为“的”
p1.y = 4;
Point p2 = new Point();//p2(5,5)
p2.x = 5;
p2.y = 5;
System.out.println(p1.x+","+p1.y);//3,4
System.out.println(p2.x+","+p2.y);//5,5
}
}
class Point{//类
int x;
int y;
}
5、null与空指针异常:引用类型变量用于存放对象的地址,可以给引用类型赋值为null,表示不指向任何对象。当某个引用类型变量为null时无法对对象实施访问(因为它没有指向任何对象)。此时通过引用访问成员变量或调用方法,会产生NullPointerException空指针异常。
注意事项:除了8种基本类型,其他都是引用类型变量(也叫句柄)。