-
万事万物皆对象
- 在java语言中,将功能,结构封装到类中,通过类的实例化,来调用具体的功能结构
- Scanner,String等
- 文件:File
- 网络资源:URL
- 设计到java语言与前端Html,后端的数据库交互式,前后端的结构在Java层面交互时,都体现为类,对象。
- 在java语言中,将功能,结构封装到类中,通过类的实例化,来调用具体的功能结构
-
内存解析的说明,只可能存储两类值:NULL或者 地址值(含变量的类型)
类new后如果直接打印显示其地址值,且可以赋值null
public class practise { public static void main(String[] args){ Student stus1 = new Student(); Student stus2 = new Student(); stus2 = null; System.out.println(stus1); System.out.println(stus2); } } class Student{ }
输出:
praticses.Student@15db9742
null还有比如在类中创建数组的注意事项
类class中创建数组并未初始化时,在另一个地方调用时,一定要初始化即new一下。
当然也不管是类本身的数组,还是在类中其他数组,只要在类中未初始化,调用前都要new一下
如果是创建的类的数组,在使用某一个类时要先new一下,如下
public class practise { public static void main(String[] args){ Student []stus1 = new Student[5]; //在这加个stus1[0] = new Student();即可 stus1[0].num = 1; //在使用之前应先new个stus1[0],不然里面是NULL System.out.println(stus1[0].num); } } class Student{ int num; }
报错:
Exception in thread “main” java.lang.NullPointerException
at praticses.practise.main(practise.java:6) -
匿名对象的使用
- 创建的对象,没有显式的赋给一个变量名,即为匿名对象
- 匿名对象只能调用一次
- 两次分开调用的匿名对象之间是没有关系的,是独立的两个对象
public class practise {
public static void main(String[] args){
new Student().num = 100;
new Student().showStu();
}
}
class Student{
int num;
public void showStu(){
System.out.println(num);
}
}
输出为 0
也可以直接再创建一个类,使用类当做形参,这样可以调用两次
如
mall().show(new Student);