Java一切都是对象怎么理解
这篇文章主要介绍"Java一切都是对象怎么理解",在日常操作中,相信很多人在Java一切都是对象怎么理解问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Java一切都是对象怎么理解"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
1、用于操纵的对象标识符实际上只是对象的一个引用(reference),引用指向对象,与对象相关联
2、如"String s;"这样的定义,只创建了一个引用,并没有关联到具体对象,此时向s发送消息(即使用s来调用方法),将会返回运行时错误
3、new关键字,为对象分配存储空间,将对象存储在"堆(heap)"里,用堆进行存储分配比用栈进行存储分配需要更多的时间
4、Java的对象存储在堆里,对象的引用存储在栈里,但基本类型是特例,基本类型的对象是存储在栈里的
[@more@]
5、九种基本类型:boolean、char(16-bit)、byte(8-bit)、short(16-bit)、int(32-bit)、long(64-bit)、float(32-bit)、double(64-bit)、void,JAVA的基本类型的位数是不会变化的,它只与虚拟机有关,与机器具体的参数无关
6、对应九种包装器类型:Boolean、Character、Byte、Short、Integer、Long、Float、Double、Void(即大写了类型名首字母,就成为了包装器类),还有其它类似的包装器,但可能没有对应的基本类型,比如两个用于高精度计算的类:BigInteger(支持任意精度的整数)和BigDecimal(支持任意精度的浮点数),它们的运算不能使用运算符,只能调用方法,速度较慢,但可以实现高精度,按常理来考虑就可以想到,使用包装器来进行一些操作,必然会比直接使用基本类型慢,但是肯定也会有其它方面的好处,比如功能的扩展。
7、九种基本类型对应的的默认值:false、null、(byte)0、(short)0、0、0L、0.0f、0.0d,void型不清楚,基本类型只有在作为某个类的属性时才有初始值,其它情况编译器是不管它的,没有经过初始化的变量可能是任意值,编译将无法通过,会产生未初始化的错误(编译时错误)。
8、Java中所有数值类型都有正负号,不存在无符号的数值类型,boolean型所占存储空间的大小没有明确指定,其值只能为true和false
9、定义基本类型:char c = 'x'; 或:Character C = new Character('x');
10、Java会确保数组被初始化且有越界检查
11、创建一个数组对象时,实际是创建了一个引用数组,每个引用会自动被初始化为一个特定值null,null表示引用还没有指向任何对象。在使用引用前必须为其指定一个对象,如果试图使用一个还是null的引用,将会在运行时报错。(即item2中所说的情况,注意,不是报编译错误,编译是可以通过的)
12、创建基本类型数组时,编译器会将数组所占的内存全部置零(类型默认值)。(即,基本类型数组置零,对象数组置null)
13、Java是一种自由格式(free-form)的语言,空格、制表符(tab)、换行(enter)都不会影响程序的执行结果
14、基本类型变量的生命周期受限于作用域(scope),超出作用域就不可用了;对象在作用域之外仍然存在,定义时的引用虽然已经不可用,但可在那之前传递或复制引用
15、类内部的元素包括:数据成员(data member,有时也叫做域(field)),方法(method,有时也叫做成员函数(member function))
16、当变量作为一个类的成员使用时,Java会确保给定其默认值,但是如果变量不是类的成员变量,比如定义在某个方法内的变量,是不会被自动初始化的
17、调用方法时,如果参数是对象,则传递的是对象的引用,如果参数是基本类型的,则传入的是值
18、Java的包(package)使用反向域名来命名,包名一律小写
19、static的方法或变量是归属于类(class)的,类的多个对象共享同一个static变量,static方法常被用来看护与其隶属于同一类型的实例群(比如计算这个类已经生成了多少个对象)
20、java.lang(是指一个类,不是指这个包)是默认被import到每一个java文件中的,所以不需要手动import它
21、常用到的System.out是一个static的PrintStream对象
22、java文件名必须与其中一个public类名相同,且该类中必须包含一个public static void main()方法,这是程序执行的起点
23、Java注释文档的javadoc命令都只能始于/**注释,结束于*/;可以使用一些文档标签,它们是一些以@字符开头的命令,且@字符要置于注释行的最前面(但在前导*之后);行内文档标签则可以出现在javadoc注释中的任何地方,它们也是以@开头的,但要括在{}内
24、javadoc只能为public和protected成员进行文档注释,private和package成员的注释会被忽略掉
25、javadoc注释中可以嵌入html标签,主要可用于对代码进行格式化
到此,关于"Java一切都是对象怎么理解"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!