Java初学者要掌握的基础知识

这是一次对Java基础知识的总结,Java的知识点其实非常多,并且有些知识点比较难以理解,有时候我们自以为理解了某些内容,可能只是停留到了表层,还是那句古话,经济基础决定上层建筑,要深入地理解底层的实现原理,这对初学者很实用。

JAVA---------面向对象的三大特性

继承:一般类继承方式仅有单继承的,内部类实现多继承,接口可以多继承。

封装:访问权限控制public>protected>packge>private   内部类 也是一种封装。

多态:编译时多态,体现在向上转型和向下转型,通过引用类型判断调用哪个方法(静态分派)。运行时多态,体现在同名函数通过不同参数实现多种方法(动态分派)。

JAVA---------基本数据类型

1.基本类型位数,自动装箱,常量池。

2.例如byte类型1byte可以表示8位,可以表示的数字是-128到127,由于还有一个0,加起来总共256,也就是二的八次方。32位和64位机器的int是四个字节也就是32位,char1个字节就是8位,float是4个字节,double是8个字节,long是8个字节。

3.基本数据类型的包装类只是在数字范围-128到127中会用到常量池,会自动拆箱装箱,其余数字范围的包装类则会新建实例。

JAVA---------String及包装类

1.String类型是final类型,在堆中分配空间后内存地址不可变。

2.底层是final修饰的char[]数组,数组的内存地址同样不可变。但实际上可以通过修改char[n]='a'来进行修改,不会改变String实例的内存值,不过在jdk中,用户无法直接获取char[],也没有方法能操作该数组。所以String类型的不可变实际上也是理论上的不可变。所以我们在分配String对象以后,如果将其='abc',那也只是改变了引用的指向,实际上并未改变了原来的对象。

3.StringBuffer和StringBuilder底层是可变的char[]数组,继承父AbstractStringBuilder的各种成员变量和方法,实际上的操作都是由父类方法来完成的。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计...
    子非鱼_t_阅读 9,813评论 1 44
  • 一、基础知识:1、JVM、JRE和JDK的区别:JVM(Java Virtual Machine):java虚拟机...
    杀小贼阅读 7,051评论 0 4
  • 上大学的时候,跟寝室同学说过自己有预感活不过30岁。工作后,身体果然是熬废了,虽然谈不上死掉,但有种生不如死的感觉...
    窝余阅读 1,495评论 0 0
  • 看了好多年的网文,一直想着自己也可以加入写作大军,难耐提笔忘词,又加生活阅历实在有限,一直想写而未动手,...
    纪娟阅读 1,222评论 0 0
  • 一、顺序控制:默认情况下从左至右、从上至下的简单顺序执行。不加控制的流程。 二、分支控制:单分支、双分支、多分支;...
    zhanglizzy阅读 3,465评论 0 1