收藏 分销(赏)

java----PPT.ppt

上传人:a199****6536 文档编号:10509244 上传时间:2025-05-31 格式:PPT 页数:500 大小:9.21MB
下载 相关 举报
java----PPT.ppt_第1页
第1页 / 共500页
java----PPT.ppt_第2页
第2页 / 共500页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,课时一,Java,开发环境和程序设计初步,2012-2-27,讲授:夏冰冰,Phone:13583118912,E-mail:jennifer_xiababy,办公室:实验楼,421,1,主要内容,1.1,Java,语言发展历史,1.2,Java,语言的特点,1.3,Java,的工作原理,1.4,Java,运行环境,JDK,1.5,构建,Java,程序,1.6,开发工具,2,1.,人物,James Gosling,-,Java,之父,-,戴着眼睛的蜘蛛,-,Sun,副总裁,Bill Joy,-,Sun,创始人之一,-,软件业的爱迪生,-,2003,年离开,Sun,3,2.,关键词,绿色计划,Green,与平台无关,Java,最初的名字:橡树,Oak,一杯飘香的咖啡,Java,网络与,Java,现在请观看,java+you,4,Sun(Stanford University Network),原硅谷总部图片现成为,Facebook,总部,5,Sun,原硅谷总部图片,6,Sun,原硅谷总部图片,7,Sun,原硅谷总部图片,8,Sun,原硅谷总部图片,9,Sun,公司创立之初就提出:,The Network is the Computer,网络就是计算机。,10,Sun,董事会主席,:,Scott McNealySun CEO(,任期,1982-2006),11,Scott McNealy,12,Sun,公司,CEO,:,Joanthan Schwartz,2006-2010,任职,13,Joanthan Schwartz,14,Sun,和,Oracle,介绍,15,Sun,和,Oracle,2009.4 Oracle,提出,74,亿美元收购,Sun2010.1,欧盟批准,Oracle,收购,Sun,16,Sun,沉浮史,2StandardEdition,),,,Java,的标准版,针对普通,PC,应用。,J2EE,(,Java2EnterpriseEdition,),,,Java,的企业版,针对企业网应用。,J2ME,(,Java 2 Micro Edition,),针对嵌入式设备和消费类电器,如手机等。,25,1.2 Java,的特点,Java,是一种具有简单、面向对象、分布式、,解释性,、,健壮性、安全、平台无关、可移植、高性能、多线程,和动态执行等特性的语言。,26,特点,简单并面向对象,鲁棒并安全,结构中立并可以移植,高性能,解释执行、多线程并且是动态的,27,解释性,Java,语言分两步执行,1,)由编译器将用户程序编译成,字节码,2,)由,Java,虚拟机(,Java Virtual Machine,),解释执行字节码,可以在不同的硬件平台上实现不同的,Java,虚拟机,保,证了,Java,语言的,平台无关性,和,可移植性,。,28,1.3 Java,的工作原理,Java Application,Java Applet,Servlets(JSP),Java API,Web Server,字节码,Bytecodes,Java Virtual Machine(JVM),Hardware Platform,29,Java,虚拟机,软件模拟的计算机,执行字节码文件,(*.class),不同的软硬件平台需要对,Java,虚拟机做专门的实现,30,Java,程序执行过程,1,31,Java,程序执行过程,2,32,Java,程序执行过程,2,33,1.4 Java,运行环境,JDK,JDK,:,Java,开发工具包,Java Development Kit,面向开发人员,JRE,:,Java,运行时环境,Java Runtime Environment,面向,Java,程序的使用者,34,第一步:,FilesJavajdk1.7.0_03,bin,40,1.5,构建,Java,程序,Java,程序分成两大类:,Java,应用程序,Application,控制台程序:在,DOS,窗口运行,程序入口是,main(),方法,窗口程序:有图形界面,程序入口是,main(),方法,Java,小应用程序,Applet,:,嵌入在,HTML,文件中,在浏览器中运行,没有,main(),方法,41,Hello World,程序,/Example 1,/This is a simple instance of java application,public class HelloWorld,public static void main(String args),System.out.println(“Hello World!”);,42,程序分析,类定义,Java,程序的基本组成部分是类,(class),,,如本例中的,HelloWorld,类,。,main(),方法,Java Application,程序的入口是,main(),方法。它有固定的书写格式:,public static void main(String args),43,程序分析,程序内容,由方法体实现程序要完成的功能,方法的实现由一个个语句组成,注释,与,C+,相同,一行中,/,后的内容为注释,,/*,和,*,/,中的内容也是注释,44,Java,程序的编译运行,javac HelloWorld.java,源文件名为,HelloWorld.java,,注意:文件名必须与公共类名相同;由,javac,编译器编译源程序,产生字节码文件,(,HelloWorld.class,),java HelloWorld,由,java,解释器解释执行,45,1.6,开发工具,Eclipse MyEclipse,Eclipse,一个集成开发环境,IDE(Integrated Developing Environment),,,IBM,公司,开源。,目前主要用作,Java IDE,。,MyEclipseGenuitec,公司,,Eclipse,的插件,不免费。,46,47,第,2,章,Java,程序设计基础,48,2.1.1,标识符与关键字,Java,的符号集采用,Unicode,字符集,一个字符占,两个字节,,共有,65535,个字符,包含中文、英文、日文、朝鲜文及其他语言的文字,49,标识符,为变量、类或方法等起的一个名称,以字母、下划线或,$,符号开头,由字母、下划线、,$,符号和数字组成,区分大小写,没有最大长度限制,不能使用,关键字,(,见附录,B),示例:,identifier,、,userName,、,user_name,、,_sys_varl,、,$,change,、程序名,50,下列标识符哪些是合法的?,123,、,_name,、,class,、,1first,_cat,、,5books,、,+static,、,-3.14159,51,2.1.2,基本数据类型,Java,编程语言定义了,8,种基本数据类型,整数,byte,、,short,、,int,和,long,浮点,double,和,float,布尔,boolean,字符,char,52,(1),整数类型,byte(8,位,),、,short(16,位,),、,int(32,位,),和,long(64,位,),三种形式使用,十进制、八进制或十六进制,2,十进制整数,2,077,以,0,开头表示八进制值,0 xBAAC,以,0 x,开头表示十六进制值,默认是,int,类型,使用字母,L,或,l,定义,long,类型,53,补充例,1,public class IntTest,public static void main(String argsp),byte b1=0 x12;,byte b2=0 x123;,short s1=0 x1234;,short s2=0 x12345;,int i1=0 x12345678;,int i2=0 x123456789;,int i3=0 x123456789L;,思考:编译时会出现怎样的结果?,54,补充例,1,说明,第一遍编译时,语句,int i2=0 x123456789;,提示“过大的整数”错误,把该语句加注释或删除后,,进行第二遍编译,对于语句,byte b2=0 x123;,short s2=0 x12345;,int i3=0 x123456789L;,都出现了错误提示“可能损失精度”。,55,(2),浮点类型,float(32,位,),和,double(64,位,),浮点数包括:,E,或,e(,加指数值,),科学计数法形式,F,或,f(,float,),D,或,d(,double,),如:,3.14,一个简单的浮点值,(,一个,double,类型,),6.02E23,一个大浮点值,2.718F,一个简单的,float,值,123.4E+306D,一个带有,D(,多余,),的大的,double,值,默认类型是,double,56,(3),布尔类型,boolean,boolean,数据类型有两个值:,true,和,false,例如:语句,boolean truth=true;,声明变量,truth,为,boolean,类型,并将其赋值为,true,。,注意:不能写为,boolean truth=1;,57,(4),字符类型,char,与,String,char,代表,16,位的,Unicode,字符,字符必须在单引号,(,),内,使用,:,a,字母,a,t,制表符,u?,特定的,Unicode,字符,,?,代表四位十六进制数,58,(4),字符类型,char,与,String,char ch=A;,/,声明并初始化一个,char,变量,char ch1,ch2;,/,声明两个,char,变量,59,补充例,2,public class CharTest ,public static void main(String argsp),char ch1=A;,char ch2=u0041;,char ch3=0X41;,char ch4=65;,int x=A;,System.out.println(ch1);,System.out.println(ch2);,System.out.println(ch3);,System.out.println(ch4);,System.out.println(x);,思考:字符常量的不同,表示方式。,60,(4),字符类型,char,与,String,String,不是基本数据类型,而是一个类,字符在双引号,(,“”,),内,“,Hello,World!”,使用如下:,String str1,str2;,/,声明两个,String,变量,String greeting=“Good Morning!n”;,String errorMessage=“Record Not Found!”;,/,声明两个,String,变量并且初始化它们,61,补充例,3,public class Assign,public static void main(String args),int x,y;,float z=3.414f;,double w=3.1415;,boolean truth=true;,char c;,String str;,String str1=“bye”;,c=A;,str=“Hi out there!”;,x=6;,y=1000;,y=3.1415926;,w=175,000;,truth=1;,z=3.14156;,为什么不合法,62,2.1.3,变量,变量:,声明变量必须在,类的定义内,,可以在,方法内,或者,方法外,在方法内定义的变量称为局部变量,需要显式的对其初始化,成员变量和类变量自动初始化,数字型初始值为,0,对象型初始值为,null,63,2.1.3,常量,常量:在程序运行中其值保持不变的量。,文字常量:在程序中直接写出量值的常量,,如:,37,,,2.1,,,true,等。,符号常量:用标识符代表的常量,,如:,final int x=100;,64,补充:基本数据类型间的转换,一般形式,:,(,类型,),(,表达式,),作用:将表达式的结果强制转换为,另一种类型,低存储位可以,自动转换,为高存储位数据类型,高存储位则必须通过,强制类型转换,才能转换为低存储位数据类型,65,补充例,4,public class IntToLong ,public static void main(String argsp),int x=5;,long y,z;,y=10L;,z=x+y;,System.out.println(x);,System.out.println(y);,System.out.println(z);,66,补充例,5,public class LongToInt ,public static void main(String argsp),int x;,long y,z;,y=10L;,z=20L;,x=y+z;/,可改为,x=(int)(y+z);,System.out.println(x);,System.out.println(y);,System.out.println(z);,67,4.3.4,封装类,(Wrapper,类,),基本数据类型,Wrapper,类,boolean,Boolean,byte,Byte,char,Character,short,Short,int,Integer,long,Long,float,Float,double,Double,68,Wrapper,类,通过将值传递给相应的构造器,可以构建,Wrapper,类对象,例如:,int pInt=500;,Integer wInt=new Integer(pInt);,int p2=wInt.intValue();,69,Wrapper,类,当转换基本数据类型时,Wrapper,类很有用,因为可以使用很多,Wrapper,类方法,(,查,API),。,例如:,String str=“365”;,int x=Integer.parseInt(str);,或,int x=Integer.valueOf(str).intValue();,70,2.1.4,运算符与表达式,(,与,C,和,C+,重复的不再介绍,请大家自学,),71,1.,逻辑运算符,逻辑运算符是,!,一元逻辑非,&,二元逻辑与,二元逻辑异或,|,二元逻辑或,短路逻辑运算符是,&,二元条件逻辑与,|,二元条件逻辑或,72,逻辑运算符,0,值不能自动解释为,false,,,非,0,值不能自动解释为,true,。,如:,int i=1;,if(i)/generates a compile error,if(i!=0)/correct,73,逻辑运算符,短路逻辑操作符,MyDate d;,if(,(d!=null),&,(d.day31),/do something with d,当第一个子表达式,(d!=null),为假时,第二个子表达,式就被跳过,全部表达式总是假的。,同样,使用,|,操作符,如果第一个表达式返回为真,,则不必计算第二个表达式,因为整个表达式必定为真。,74,2.,字符串连接运算符,+,操作符,执行,String,连接,产生新的,String,一个参数必须是,String,对象,非字符串对象会自动转换为,String,对象,如要转换为等价的字符串时,使用,toString,(),成员方法,75,字符串运算符,String first=“James”,last=“Gosling”;,String name=first+last;,结果,:name,的值是,JamesGosling,76,3.,点运算符,“,点,”,符号:,.,用于访问对象成员,包括属性和方法。,77,说明,点的操作可使您访问类的,非私有,属性和方法,在方法的定义内,访问,本地成员,不需要使用点符号,78,4.,对象运算符,A instanceof B,用来判定对象,A,是否为类,B,的对象,79,上机作业,(上机调试完后写在作业本上),1.,设定一个变量代表月份,根据变量值输出该月份代表的季节,(,春季、夏季、秋季、冬季,),。,提示,:,使用,switch,语句,2.,比较两个数的大小,按照从小到大的顺序输出。,3.,输出,10,50,之间所有能被,3,整除的数。,选做题:,67,页,17,题,80,补充:输入输出语句介绍,import javax.swing.*;,public class iow1,public static void main(String args),String input;,int result;,input=JOptionPane.showInputDialog(“,请输入年龄”,);/,接收输入,result=Integer.parseInt(input);/,类型转换,JOptionPane.showMessageDialog(null,result);/,输出,81,2.3,数组,82,2.3.1,一维数组,83,1.,一维数组的声明,数组一般用来组合,相同类型,的对象。,数组允许通过,公共的名称,来引用该组对象。,数组声明创建一个引用,用它可以引用一个数组。,84,声明格式,1),变量名后加方括号,如:,int x;,String x;,2),类型后加方括号,如:,int x;,String x;,声明不指定数组的实际大小。,85,数组的类型,声明,基本类型,数组:,char s;,char s;,声明,类类型,数组:,Point p;/Point,是,java.awt,中的一个类,Point p;,86,2,、使用,new,为数组分配空间,使用,new,关键字创建数组。,数组的创建是为数组,指定元素的个数,,并为数组的元素,分配存储空间,。,87,创建基本类型数组,例如,创建一个基本,(char),类型数组,:,public char createArray(),char s;,s=new char26;,for(int i=0;i26;i+)si=(char)(A+i);,return s;,s,1fb8ee3,A,B,C,D,E,88,创建基本类型数组,例如,创建一个基本,(char),类型数组,:,public char createArray(),char s=new char26;,for(int i=0;i26;i+)si=(char)(A+i);,return s;,89,创建对象数组,另一示例,创建一个对象数组:,public Point createArray(),Point p;,p=new Point10;,for(int i=0;i10;i+)pi=new Point(i,i+1);,return p;,90,创建对象数组,另一示例,创建一个对象数组:,public Point createArray(),Point p=new Point10;,for(int i=0;i10;i+)pi=,new,Point(i,i+1);,return p;,91,point,数组示意图,Point,.,Point,X,Y,0,1,Point,X,Y,1,2,Point,X,Y,2,3,堆内存,p,栈内存,61de33,92,3,、初始化数组整型数组,写法一,(,动态初始化,),:,int intArray;,intArray=new int5;,此时数组元素均为默认值,0,,可以逐个赋值:,intArray0=1;,intArray1=2;,intArray2=3;,93,3,、初始化数组整型数组,写法二,(,静态初始化,),:,int intArray=new int1,2,3;,或,int intArray=1,2,3;,省略了指定数组大小,,此时数组的大小由大括号中值的个数决定,,这种方式需指定数组中各个元素的值。,94,3,、初始化数组对象数组,写法一,(,动态初始化,),:,Point PArray;,PArray=new Point3;,此时数组元素的值为默认值,null,,可逐个赋值:,PArray0=new Point(0,1);,PArray1=new Point(1,2);,PArray2=new Point(2,3);,95,3,、初始化数组对象数组,写法二,(,静态初始化,),:,Point PArray=new Point,new Point(0,1),new Point(1,2),new Point(2,3);,或,Point PArray=,new Point(0,1),new Point(1,2),new Point(2,3);,96,初始化数组字符串数组,写法一,(,动态初始化,),:,String names;,names=new String3;,逐个赋值:,names0=“How”;,names1=“are”;,names2=“you”;,97,初始化数组字符串数组,写法一,(,动态初始化,),:,String names;,names=new String3;,names0=new String(“How”);,names1=new String(“are”);,names2=new String(“you”);,98,初始化数组字符串数组,写法二,(,静态初始化,),:,1.String names=new String“How”,”are”,”you”;,2.String names=“How”,”are”,”you”;,3.String names=,new String(“How”),new String(“are”),new String(“you”);,99,4.,一维数组的重定义,在程序中可以改变数组的大小,即重新定义数组。,即为数组分配新的内存空间。,(,想想为什么?,),如:,int v_array=new int10;,v_array=new int50;,v_array=new int6;,100,5,、数组长度,length,在,Java,编程语言中,所有数组的索引均,从,0,开始,。,数组的元素数作为数组对象的一部分存储在,length,属性,中。,如果发生边界溢出访问,那么就将引发运行时异常。,101,5,、数组长度,length,使用,length,属性对数组作如下循环:,int list=1,2,3;,for(int i=0;i,list.length,;i+),System.out.println(listi);,102,上机作业,1,将一个数字与数组中的元素比较,,如果该数字存在数组中,给出该数字在数组中的位置;,如果该数字不在数组中,给出提示。,103,6.1.2,二维数组,104,1.,二维数组的声明与定义,声明:,数据类型 数组名,;,或,数据类型,数组名,;,或,数据类型,数组名,;,定义:,数组名,=new,数据类型,行数,列数,;,105,举例,int twoDim =new int45;,或,int twoDim =new int4;,twoDim0=new int5;,twoDim1=new int5;,错误的写法:,int twoDim =new int 4;,原因:省略行数,不合法,106,举例,矩阵数组,矩阵数组:,int y =new int23;,内存分布图:,107,测试程序,class array21,public static void main(String args),int y;,y=new int23;,System.out.println(y=+y);,System.out.println(y0+y0);,System.out.println(y1=+y1);,System.out.println(y.length=+y.length);,System.out.println(y0.length=+y0.length);,System.out.println(y1.length=+y1.length);,108,举例,非矩阵数组,非矩阵数组:,int twoDim =new int4;,twoDim0=new int2;,twoDim1=new int4;,twoDim2=new int6;,twoDim3=new int8;,109,非矩阵数组的内存分布图,110,2.,初始化,(1),二维整型数组,int aVar=new int1,2,3,4,5,6;,或,int aVar=1,2,3,4,5,6;,或,int a=new int2;,a0=new int1,2;,a1=new int2,3;,111,错误的写法,int a=new int2;,a0=1,2;,a1=2,3;,112,(2),字符串数组,String s=new String2;,s0=new String2;,s1=new String2;,s00=good;,s01=luck;,s10=to;,s11=you;,113,字符串数组,String s=new String2;,s0=new Stringgood,luck;,s1=new Stringto,you;,114,错误的写法,String s=new String2;,s0=good,luck;,s1=to,you;,115,3.,二维数组的访问,int a=1,2,3,3,4,5,6;,for(int i=0;i,a.length,;i+),for(int j=0;j,ai.length,;j+),System.out.println(aij);,116,上机作业,2,利用二维非矩阵数组输出下面的数字,0,1 2,2 3 4,3 4 5 6,117,上机作业,3,编程求一个整数数组的最大值、最小值、平均值和所有元素的和。,118,第,3,章,Java,面向对象编程,类和对象,119,3.1.1,类,1.,类的定义,Java,类的基本语法,:,class,可以是任何合法的标识符,并且是所声明类的名字。,有几种可使用的,,但现在只使用,public,,声明类可被任意访问。,类的正文声明了与类相关的数据属性、构造器和方法的集合。,120,补充例,1,例,1,:,定义一个人类,描述人类的姓名、年龄、身高、,体重,定义一个方法用来检验人的体重是否在,正常范围之内,定义一个方法用于得到是否肥胖,的结论,。,121,计算标准,122,2.,成员变量,变量声明的一般格式,:,;,例如,:,private int x;,可以是任何合法的标识符,它是所声明属性的名字。,有几种可用的,,但现在只使用,public,或,private,。,private,声明该属性只能由该类的方法访问。,属性的,可以是任何基本类型,(int,boolean,等,),或任何类。,123,3.,声明方法,方法的基本语法,:,(),可以是任何合法的标识符,但限制使用那些已经在使用的名称。,是可选项,并可有很多不同的修饰符,包括,public,、,protected,和,private,等。,public,访问修饰符表明可从其他代码调用该方法。,private,表明方法只能在由该类中其他方法调用。,124,Person,类的成员变量的定义,class Person,private String name=null;,private int age=0;,private double height=0;,private double weight=0;,125,Person,类的方法的定义,public double Bmivalue(),return height/(weight*weight);,public double StdWeight(),return 22*height*height;,public double ObesityDegree(),return(weight-StdWeight()/StdWeight()*100;,126,Person,类的方法的定义,public String Conclusion(),if(ObesityDegree()-10),return,瘦,;,else,if(ObesityDegree()20),if(Bmivalue()24.2),return,普通,;,else,return,超重,;,else,return,肥胖,;,127,Person,类的构造函数的定义,public Person(String name,int age,double height,double weight),this.name=name;,this.age=age;,this.height=height;,this.weight=weight;,128,3.2.1,构造函数,129,1.,声明构造函数,构造函数的基本语法:,(),130,2.,构造函数特点,构造函数作用:完成类对象的,初始化,工作,构造函数的名称必须与,类名,相同,构造器,没有返回值,并且不可被继承,一般将构造函数的修饰符声明为,public,构造函数中不能有,return,语句,131,3.,构造函数参数,参数表与方法声明中的一样。可以象方法一样向构造函数传递参数。,构造函数可以有,0,个、,1,个或者多个参数。,132,(1),无参数的构造函数,没有构造函数,使用默认的构造函数,(,没有参数,没有方法体,),如果使用没有参数的构造函数,则创建的对象具有相同的初始值,133,修改补充例,1,class Person,private String name=model;,private int age=20;,private double height=1.7;,private double weight=60;,public Person(),显式初始化,在执行构造函数方法体之前执行,134,继续修改补充例,1,class Person,private String name=model;,private int age=20;,private double height=1.7;,private double weight=60;,public Person(),this.name=jack;,this.age=30;,this.height=1.8;,this.weight=80;,135,(2),带参数的构造函数,class Person,private String name=model;,private int age=20;,private double height=1.7;,private double weight=60;,public Person(String name,int age,double height,double weight),this.name=name;,this.age=age;,this.height=height;,this.weight=weight;,this,:代表当前对象,136,4.,构造函数的重载,一个类可以有多个构造函数,,,叫做构造函数的重载。,条件,(满足其一),参数的,个数,不同,参数的,类型,不同,137,修改补充例,1,public Person(String name,int age,double height,double weight),this.name=name;,this.age=age;,this.height=height;,this.weight=weight;,public Person(String name,int age),this.name=name;,this.age=age;,this.height=1.7;,this.weight=70;,public Person(String name),this.name=name;,this.age=25;,this.height=1.5;,this.weight=50;,138,另一种写法构造函数的相互调用,public Person(String name,int age,double height,double weight),this.name=name;,this.age=age;,this.height=height;,this.weight=weight;,public Person(String name,int age),this(name,age,1.7,70);,public Person(String name),this(name,25,1.5,50);,139,5.,构造函数的使用,不能由编程人员显式调用。,在创建一个类的新对象的同时,系统会,自动,调用该类的构造函数为新对象初始化。,构造函数只能和,new,运算符一起使用。,140,格式,类名 对象名,=new,构造函数名称,(,成员变量的初始值,),141,6.,默认构造函数,每个类至少有一个构造函数。,如果不编写构造函数,则自动添加,默认构造函数,:,默认构造函数,不带参数,默认构造函数,函数体为空,不必编写构造函数就能使用,new Xxx(),创建,对象实例,142,找错误?,class Person,private String name=model;,private int age=20;,private double height=1.7;,private double weight=60;,public Person(String name,int age,double height,double weight),this.name=name;,this.age=age;,this.height=height;,this.weight=weight;,class test,public static void main(String args),Person p1=new Person();,Person p2=new Person(“jerry”,20,1.9,100);,哪个语句有错?,为什么?,143,上机作业,调试完后写在作业本上,105,页,2(5)(7),144,3.1.2,对象,(,类的实例化,),145,补充练习:,SameCircle,类,表示一个圆,class SameCircle,public int nOrignX;,public int nOrignY;,public int nRadius;,public SameCircle(int nOrignX,int nOrignY,int nRadius),this.nOrignX=nOrignX;,this.nOrignY=nOrignY;,this.nRadius=nRadius;,146,1.,对象的生成,(1),对象的声明,格式:,;,如:,SameCircle c1,c2;,c1,和,c2,是两个空对象。,c1,c2,147,(2),创建对象,格式:,=new(,实参,);,如:,c1=new SameCircle(3,4,5);,c2=new SameCircle(6,7,8);,3,4,5,6,7,8,c1,c2,对象,c1,的首地址,对象,c2,的首地址,148,2.,对象的引用,SameCircle c1=new SameCircle(3,4,5);,SameCircle c2=c1,;,3,4,5,c1,对象,c1,的首地址,c2,对象,c1,的首地址,c2,是,c1,的引用,是,c1,的首地址,149,3.2.5,对象的清除,对象为,null,时,由,Java,的自动垃圾收集机制清除对象,释放对象占用内存,手动编写,finalize(),方法撤销对象,不提倡使用,150,补充知识:对象的内存模型,栈内存:在方法
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服