欢迎使用CSDN-markdown编辑器

来源:互联网 发布:现在做网络推广好做吗 编辑:程序博客网 时间:2024/05/16 15:49

1.尽管java是基础C++的,但相比之下,java是一种更纯粹的面向对象程序设计语言

2.java中可以用对象的理念来理解,但是如下面例子第一句定义的,这时候仅仅是创建了一个应用,对象是需要初始化的,一般都是由本人去new对象,

     但是也可以通过赋值去生成初始化对象,列如 String s = "abc"; 这种就是在创建一个引用的时候进行了初始化。

String s;//这里创建了一个String的引用s,但是没有指向任何的String对象
s= new String(“jiren”);//将引用指向通过new创建的String对象
s.toUpperCase();//通过引用s向它指向的对象发出信息,即通过引用来操作引用指向的对象,将刚刚创建的String对象中的字符变大写。
String str = new String(“hello”);//在创建的同时初始化对象。、、

3.对象在java中是存在什么地方的?内存是怎么分配的呢?

(1)寄存器。这是最快的存储区,它位于处理器的内部,而且数量及其有限,所以我们不能直接控制,是按需分配的。

(2)堆栈。堆栈位于通用的RAM中,通过堆栈指针来分配或者释放内存,通过堆栈指针的移动来快速有效的分配内存,向下分配新的内存,向上释放指定内存,速度仅次于寄存器。在这里,java系统必须知道堆栈内所有项的确切的生命周期,以便来通过移动堆栈指针来释放和分配内 存,这约束限制了程序的灵活性,虽然某些java数据存储在堆栈中—特别是对象引用,但是java对象并不存储在里面。

(3)堆。一种通用的内存池,同样位于RAM中,用于存放所有的java对象。在堆中,java编译器不需要知道存储的数据在堆里的存活时间,这样分配起来比较容易,所以当我们使用new在创建一个新的对象的时候,代码执行,会自动的在堆里进行存储分配。最后他告诉我们的是,灵 活是要有代价的,代价就是我们在堆里分配和清理需要比堆栈里面的分配和清理花费更多的时间。

(4)常量存储 。在存储程序中永远不会被改变。

(5)非RAM存储。如数据完全存活于程序之外,那么它可不受程序任何控制,在程序没运行时也可存在。其中两个基本例子:流对象和持久化对象。流对象中,先将对象转化为字节流,通常被发给另外一台机器。持久化对象中对象被存放与磁盘上面,因此就算程序终止,它们仍然可以保持自己的状态。这种方法技巧在于:将对象转换成可存放在其他媒介上的事物,在需要时,可以恢复成常规的、基于RAM的对象。

java提供了对轻量级持久化的支持,对如JDBC之类的机制提供了对数据库的操作支持

4。java中的基本类型,主要包含八类,包括boolean,char,byte,short,int,long,float,double,基本类型不用通过new来创建,而且它存储在速度更快的堆栈中,存取起来更加的高效。同时java提供了两个用于高精度计算的类:BigInteget和BigDecimal,前者支持任意精度的整数,后者支持任意精度的浮点数。

5.垃圾回收器:大多数的程序设计语言的变量生命周期概念占据了很重要的工作部分。经常要想着何时何地销毁对象,在Java中我们不需要具体去这些工作,Java自动替我们完成所有的对象清理工作,我们可以更加专注于业务的处理。当然保持良好的编程风格习惯是每种语言都必不可少的。

6.javadoc 。所有的javadoc命令都只能在/*注释中出现,和通常一样,结束于/ 。 使用javadoc的方式主要有两种:嵌入HTML,或使用”文档标签”。

7.编码风格:类名首字母需要大写,如果类名由几个单词构成,那么把它们并在一起(也就是说,不要用下划线来分隔名字),其中没有内部单词的首字母都采用大写形式。如:class AllTheColorsOfTheRainbow

0 0
原创粉丝点击