零基础如何Java全方位学习

  • 时间:
  • 9825人关注

为学习编程的程序员分享一篇答疑文章,回答了大部分相关问题,把错误代码改掉了,希望对网友有用。

Java编程开发作为一个常年居于就业率和平均工资的榜首,也是受到了越来越多人的重视,很多小伙伴都想要学习Java,但是学习Java具体需要学习哪些内容,很多小伙伴也是一直非常疑惑,那么今天就由小编来说一说零基础如何全方位的学习Java吧:

很明确肯定重要且异常重要,用一个简单的比喻基础就是地基,有多深厚的地基就会有多高的建筑;相反地基建造的没有那么深厚,所建造出的建筑肯定受到地基的影响;

当然也有很多人觉得学习Java基础部分掌握几个简单的知识点往后学就完啦!

变量、数据类型、运算符

  • 二进制和十进制的转化
  • 注释、单行注释、多行注释、文本注释、注释内容和字节码的关系
  • 标识符、关键字、驼峰原则
  • 变量的本质、内存画图、变量声明和初始化
  • 变量的分类和作用域(局部变量、成员变量、静态变量)
  • 常量和Final
  • 基本数据类型介绍
  • 整型变量和整型常量
  • 浮点类型、float、double
  • char字符型、转义字符
  • boolean布尔型、if语句使用要点、布尔类型占用空间问题
  • 运算符介绍
  • 算数运算符(二元、自增、自减)
  • 赋值和赋值运算符
  • 关系运算符详解
  • 逻辑运算符、短路运算符详解
  • 位运算符详解
  • 字符串连接符
  • 条件运算符(三元运算符)
  • 运算符优先级问题
  • 自动类型转换详解
  • 强制类型装换详解
  • 基本数据类型装换常见错误、溢出、L问题
  • 使用Scanner获取键盘输入

控制语句

  • 控制语句和实现逻辑对应
  • if单选结构
  • if_elseif_else多选结构
  • switch语句_IDEA更换主题
  • 循环_while
  • 循环_for循环_dowhile
  • 嵌套循环
  • break和continue语句_标签_控制语句底层原理
  • 写一个年薪计算机_百度查问题的秘诀(重要)
  • 个人所得税计算器软件
  • 方法核心详解_天才思维模型教你高手学习思维模式
  • 方法的重载
  • 递归结构讲解_递归头_递归体

面向对象编程-基础

  • 面向过程和面向对象的区别
  • 类和对象的概述
  • 类的属性和方法
  • 创建对象内存分析
  • 构造方法(Construtor)及重载
  • 对象类型的参数传递
  • this关键字
  • static关键字详解
  • 局部代码块、构造代码块和静态代码块
  • package和import详解
  • JavaDoc生成API文档

面向对象编程-进阶

  • 面向对象的三大特性
  • 面向对象之【封装(Encapsulation)】
  • 访问权限修饰符
  • 面向对象之【继承(Inheritance)】
  • Object类
  • 方法重写Override
  • super关键字详解
  • 重写equals()和toString()
  • 继承中对象创建的内存分析
  • 面向对象之【多态(Polymorphism)】
  • 向上转型
  • 向下转型
  • instanceof运算符
  • 编译时和运行时详解
  • final修饰符
  • 抽象类和抽象方法(abstrct)
  • 接口的定义和实现
  • JDK8的接口新特性
  • 接口应用:内部类比较器Comparable
  • 内部类详解
  • Java的内存管理与垃圾回收

异常机制

  • 异常的概述
  • 异常的执行过程与分析
  • try-catch-finally捕捉异常
  • throw抛出异常
  • throws声明异常
  • 异常继承体系
  • 运行时异常和编译异常
  • 自定义异常

Java常用类

  • Wrapper包装类
  • 自动装箱和自动拆箱
  • 包装类的源码分析
  • String类的使用与内存原理
  • String类的源码分析
  • StringBuffer
  • StringBuilder
  • 字符串处理类性能分析
  • Date类
  • System类
  • DateFormat类
  • Calendat类
  • Math类
  • BigInteger类和BigDecimal类
  • Random类
  • 枚举类
  • File类
  • 常见的面试题讲述与分析

数据结构算法

  • 数据结构的概述
  • 线性表
  • 顺序表
  • 链表
  • 栈和队列
  • 二叉树
  • 二叉查找树
  • 二叉平衡树
  • 黑红树
  • 冒泡排序
  • 选择排序
  • 递归
  • 折半查找

以上就是码农之家小编介绍的"零基础如何Java全方位学习",希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为您服务。  

码农之家
精选回答2:JavaSE基础视频教程-持有对象之集合

2小时36分钟前回答

Collection

数组: 存储同一种数据类型的集合容器。

数组的特点:

1. 数组是相同数据类型(数据类型可以为任意类型)的有序集合

2. 数组也是对象。数组元素相当于对象的成员变量(详情请见内存图)

3. 数组长度的确定的,不可变的。如果越界,则报:ArrayIndexOutofBoundsException

4.数组中的元素与元素之间的内存地址是连续的。

初始化

默认初始化:数组元素相当于对象的成员变量,默认值跟成员变量的规则一样。数字0,布尔false,char\\u0000,引用:null。

初始化方法:

1:构造器方法,Collection的构造器接受另外一个Collection,用它来进行初始化

比如:

Collectioncollection=new ArrayList(Arrays.asList(1,2,3,4,5));

2:Collections.addAll()方法接受一个Collection对象,以及一个数组或是一个用逗号分割的列表,将其添加到Collection中

比如:

Collections.addAll(collection,11,12,13,14,15);

Collections.addAll(collection,moreInts);

3:Collection.addAll()方法将一个Collection对象全部添加进去

比如:collection.addAll(Arrays.asList(moreInts));

collection主要方法:

boolean add(Object o):添加对象到集合

boolean remove(Object o):删除指定的对象

int size():返回当前集合中元素的数量

boolean contains(Object o):查找集合中是否有指定的对象

boolean isEmpty():判断集合是否为空

Iterator iterator():返回一个迭代器

boolean containsAll(Collection c):查找集合中是否有集合c中的元素

boolean addAll(Collection c):将集合c中所有的元素添加给该集合

void clear():删除集合中所有元素

void removeAll(Collection c):从集合中删除c集合中也有的元素

void retainAll(Collection c):从集合中删除集合c中不包含的元素

collection主要子接口对象:

1、Collection接口

Collection是最基本集合接口,它定义了一组允许重复的对象。Collection接口派生了两个子接口Set和List,分别定义了两种不同的存储方式

2、 Set接口

Set接口继承于Collection接口,它没有提供额外的方法,但实现了Set接口的集合类中的元素是无序且不可重复。

特征:无序且不可重复。

3、 List接口

List接口同样也继承于Collection接口,但是与Set接口恰恰相反,List接口的集合类中的元素是对象有序且可重复。

特征:有序且可重复。

两个重要的实现类:ArrayList和LinkedList

1.ArrayList特点是有序可重复的

2.LinkedList是一个双向链表结构的。

4.Map

Map没有继承Collection接口,Map提供key到value的映射。

├Hashtable 任何非空(non-null)的对象。同步的

├HashMap 可空的对象。不同步的 ,但是效率高,较常用。 注:迭代子操作时间开销和HashMap的容量成比例。因此,如果迭代操作的性能相当重要的话,不要将HashMap的初始化容量设得过高,或者load factor过低。

└WeakHashMap 改进的HashMap,它对key实行“弱引用”,如果一个key不再被外部所引用,那么该key可以被GC回收。

SortMap---TreeMap

5.iterator

它是一个对象,它可以遍历并选择序列中的对象。

Java中的Iterator功能比较简单,并且只能单向移动:

(1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。注意:iterator()方法是java.lang.Iterable接口,被Collection继承。

(2) 使用next()获得序列中的下一个元素。

(3) 使用hasNext()检查序列中是否还有元素。

(4) 使用remove()将迭代器新返回的元素删除。

Java中的集合这节先讲到这,接下来会逐一讲解它们的作用和用法。

Javase相关视频免费下载学习

Javase视频教程【301集】:http://www.xz577.com/v104/

Java视频下载【JavaSE进阶】:http://www.xz577.com/v61/

       以上就是码农之家Java培训机构小编介绍的“JavaSE基础视频教程-持有对象之集合”的内容,希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为你服务。

相关内容

最新Java学习路线(适用于初学者)

系统学习Java后端开发线路

Javase——IO流概述、特点及其分类

展开问题
码农之家
精选回答3:Java基础类型和字节大小详解

21小时26分钟前回答

Java语言提供了八种基本类型。六种数字类型(四个整数型(默认是int型),两个浮点型(默认是double型)),一种字符类型,还有一种布尔型。

byte:

byte数据类型是8位、有符号的,以二进制补码表示的整数;(256个数字),占1字节

最小值是-128(-2^7);

最大值是127(2^7-1);

默认值是0;

byte类型用在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有int类型的四分之一;

例子:byte a=100,byte b=-50。

short:

short数据类型是16位、有符号的以二进制补码表示的整数,占2字节

最小值是-32768(-2^15);

最大值是32767(2^15-1);

Short数据类型也可以像byte那样节省空间。一个short变量是int型变量所占空间的二分之一;

默认值是0;

例子:short s=1000,short r=-20000。

int:

int数据类型是32位、有符号的以二进制补码表示的整数;占3字节

最小值是-2,147,483,648(-2^31);

最大值是2,147,485,647(2^31-1);

一般地整型变量默认为int类型;

默认值是0;

例子:int a=100000,int b=-200000。

long:

long数据类型是64位、有符号的以二进制补码表示的整数;占4字节

最小值是-9,223,372,036,854,775,808(-2^63);

最大值是9,223,372,036,854,775,807(2^63-1);

这种类型主要使用在需要比较大整数的系统上;

默认值是0L;

例子:long a=100000L,int b=-200000L。

long a=111111111111111111111111(错误,整数型变量默认是int型)

long a=111111111111111111111111L(正确,强制转换)

float:

float数据类型是单精度、32位、符合IEEE 754标准的浮点数;占4字节-3.4E38-3.4E38。。。浮点数是有舍入误差的

float在储存大型浮点数组的时候可节省内存空间;

默认值是0.0f;

浮点数不能用来表示精确的值,如货币;

例子:float f1=234.5f。

float f=6.26(错误浮点数默认类型是double类型)

float f=6.26F(转换正确,强制)

double d=4.55(正确)

double:

double数据类型是双精度、64位、符合IEEE 754标准的浮点数;

浮点数的默认类型为double类型;

double类型同样不能表示精确的值,如货币;

默认值是0.0d;

例子:double d1=123.4。

boolean

boolean数据类型表示一位的信息;

只有两个取值:true和false;

这种类型只作为一种标志来记录true/false情况;

默认值是false;

例子:boolean one=true。

char:

char类型是一个单一的16位Unicode字符;用‘’表示一个字符。。java内部使用Unicode字符集。。他有一些转义字符,2字节

最小值是’u0000’(即为0);

最大值是’uffff’(即为65,535);可以当整数来用,它的每一个字符都对应一个数字

以上就是码农之家java培训机构的小编针对“Java基础类型和字节大小详解”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。

展开问题

参考资料

  • C++语法详解

    C++语法详解

    C++语法详解适合有一定C++基础、对C++的语法有疑惑、想深入了解C++语法细节的人员阅读。《C++语法详解》同时也可以作为解决C++语法问题的参考书;对于学习过C++或已精通C++的人员,也是一本不错的资料查阅手册

    大小:117 MBC++编程

    立即下载
  • Visual C++面向对象编程教程(第2版)

    Visual C++面向对象编程教程(第2版)

    本书系统地介绍了Visual C++面向对象编程的基本原理和方法。主要内容包括C++程序设计、Visual C++编程基础和Visual C++高级编程三个部分,按照VisualC++编程环境C++语言应用程序向导文档/视图结构对话框和控件MFC图形处理编程深入的顺序计教学内容。本书适合作为高等学校相关课程的教材或参考书,也可作为Visual C++应用开发人员的自学读本或培训教材。 目录 前言 第1章 Visual C++集成开发环境 1.1 Visual C++概述 1.1.1 Visual C++的

    大小:5.71 MBC++编程

    立即下载
  • 软件工程:面向对象和传统的方法

    软件工程:面向对象和传统的方法

    大小:199 MB软件工程

    立即下载

更多回答

23小时4分钟前回答

JSONP原理及应用实例详解

JSONP 被用于跨域获取数据。在讲解它之前,先讲讲它与 JSON 之间的区别 什么是JSON? JSON 是一种基于文本的数据交换方式,或者叫做数据描述格式。 其优点是: 1、基于纯文本,跨平台传递极其简单; 2、Javascript 原生支持,后台语言几乎全部支持; 3、轻量级数据格式,占用字符数量极少,特别适合互联网传递; 4、可读性较强,虽然比不上 XML 那么一目了然,但在合理的依次缩进之后还是很容易识别的; 5、容易编写和解析,当然前提是你要知道数据结构; JSON 的缺点当然也有,跨域无法获取数据,而 JSONP 的出现正好弥补了这一缺陷 什么是JSONP? JSONP 是一种依靠开发人员的聪明才智创造出的一种非官……

38小时15分钟前回答

jquery表单验证插件validation使用方法详解

一、如何使用 引入js文件 script src="jquery.js"/scriptscript src="jquery.validate-1.13.1.js"/script 编写html页面,这里仅以用户名、密码为例 body form id="demoForm" fieldset legend用户登录/legend p label for="username"用户名/label input type="text" id="username" name="username" /p p label for="password"密码/label input type="text" id="password" name="password" /p /fieldset /form/body 编写script脚 $(document).ready(function(){ $("#demoForm").validate({ rules:{ username:{ required:true,// 是否必填 minlength:2, // 最小长度 maxlength:10 // 最大长度 }, password:{ required:true, minlength:2, maxlength:16 } } });}); 二、测试 如果大家还想深入学习,可以点击两个精彩的专题:jquery表单验证大全 JavaScript表单验证大全……